Redis教程(一)---通过docker-compose安装redis
Contents
本文主要记录了如何在 Linux(CentOS 7)
下安装redis
,包括源码编译安装和通过docker compose
一键安装。
1. 编译安装
1. 环境准备
由于 redis 是用 C 语言开发,安装之前必先确认是否安装 gcc 环境(gcc -v),如果没有安装,执行以下命令进行安装
$ yum install -y gcc
2. 编译安装
1. 下载源码
直接去官网下载最新的版本即可
$ wget http://download.redis.io/releases/redis-5.0.7.tar.gz
$ tar -zxvf redis-5.0.7.tar.gz
2. 编译
$ cd redis-5.0.7
$ make
3. 安装
# PREFIX指定安装路径
make --PREFIX=/usr/local/redis install
3. 修改配置文件
可以在源码中复制一份配置文件出来。
一般只需要修改下面这三个地方
#设置密码
requirepass password
#开放远程访问
bind 0.0.0.0
# 后台运行
daemonize yes
4. 使用
# 启动
/usr/local/redis/bin/redis-server /usr/local/redis/redis.conf
# 停止 记得替换密码
/usr/local/redis/bin/redis-cli -a '{password}' -h 127.0.0.1 -p 6379 shutdown
5. 添加systemd管理
编写service
文件
vi /usr/lib/systemd/system/redisd.service
内容如下
[Unit]
Description=redis-server
Documentation=https://redis.io/
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/redis/bin/redis-server /usr/local/redis/redis.conf
# 记得替换密码
ExecStop=/usr/local/redis/bin/redis-cli -a '{password}' -h 127.0.0.1 -p 6379 shutdown
#Restart=always
#Restart=on-failure
[Install]
WantedBy=multi-user.target
重新加载并添加到自启动
systemctl daemon-reload
# 添加到开机自启动
systemctl enable redisd.service
systemctl start redisd.service
systemctl stop redisd.service
2. Docker一键安装
需要先安装docker和docker-compose
1. 目录结构
/usr/local/docker/redis
/data
/conf/redis.conf
--docker-compose.yml
2. docker-compose.yml
version: '3'
services:
redis:
hostname: redis
image: redis
container_name: redis
restart: unless-stopped
command: redis-server /etc/redis.conf # 启动redis命令
environment:
- TZ=Asia/Shanghai
- LANG=en_US.UTF-8
volumes:
- /etc/localtime:/etc/localtime:ro # 设置容器时区与宿主机保持一致
- ./data:/data
- ./conf/redis.conf:/etc/redis/redis.conf
ports:
- "6379:6379"
3. 配置文件
去官网上下载一份最新的配置文件 然后改一改就好了。
官网地址:
https://redis.io/topics/config
**daemonize yes
必须改成daemonize no
**
不然容器启动不了
bind 127.0.0.1
改成bind 0.0.0.0
或注释掉
不然其他机器访问不了
4. 启动
#在docker-compose.yml文件所在目录执行才可以
# 启动 -d参数后台启动
docker-compose up -d
#停止
docker-compose down