Skip to content

下载

  • 下载镜像
$ docker pull redis:5.0.5

配置并启动

shell
$ mkdir -p /opt/docker-redis/data

主服务器添加配置文件 /opt/docker-redis/redis.conf,内容如下:

port 6379 requirepass 123456 appendonly yes

其中 123456是自定义的redis密码

  • 启动主redis
shell
$ docker run -p 6379:6379 --name redis \
      -v /opt/docker-redis/redis.conf:/etc/redis/redis.conf \
      -v /opt/docker-redis/data:/data \
      --restart=always \
      -d redis:5.0.5 redis-server /etc/redis/redis.conf

从服务器添加配置文件 /opt/docker-redis/redis.conf,内容如下:

port 6379 slaveof 192.168.111.111 6379 masterauth 123456 requirepass 123456 appendonly yes

其中 masterauth 123456配置的是 主服务器的密码,requirepass是自己的密码,192.168.111.111 是主服务器的IP ,docker模式下设置 daemonize yes无法启动,所以不设置该项。

  • 启动从 redis
shell
$ docker run -p 6379:6379 --name redis \
      -v /opt/docker-redis/redis.conf:/etc/redis/redis.conf \
      -v /opt/docker-redis/data:/data \
      --restart=always \
      -d redis:5.0.5 redis-server /etc/redis/redis.conf

检查

  • 主服务器上检查,进入容器
shell
$ docker exec -it redis redis-cli
  • 进入后执行
shell
$ auth 123456
$ select 0
$ set name "izqy"
  • 从服务器上检查,进入容器
shell
$ docker exec -it redis redis-cli
  • 进入后执行
shell
$ auth 123456
$ select 0
$ get name
  • 打印内容

127.0.0.1:6379> get name "izqy"

  • 退出
shell
$ quit

可以看到配置已经生效