一、启动 redis-master

  1. docker run -p 6379:6379 -v f:/Repository-Docker/redis/master-6379/data:/data -v f:/Repository-Docker/redis/master-6379/config/redis.conf:/etc/redis/redis.conf --privileged=true --name redis-master -d redis redis-server /etc/redis/redis.conf
  1. docker run -p 6379:6379 \
  2. -v f:/Repository-Docker/redis/master-6379/data:/data \
  3. -v f:/Repository-Docker/redis/master-6379/config/redis.conf:/etc/redis/redis.conf \
  4. --privileged=true \
  5. --name redis-master \
  6. -d redis redis-server /etc/redis/redis.conf

1、说明

  • —name redis-master:容器的名字

    2、redis.conf 配置文件

    redis.conf.txt

二、启动 redis-slave

  1. docker run -p 6380:6379 -v f:/Repository-Docker/redis/slave-6380/config/redis-6380.conf:/etc/redis/redis-6380.conf --name redis-slave-6380 -d --link redis-master redis redis-server /etc/redis/redis-6380.conf
  1. docker run -p 6380:6379 \
  2. -v f:/Repository-Docker/redis/slave-6380/config/redis-6380.conf:/etc/redis/redis-6380.conf \
  3. --name redis-slave-6380 \
  4. -d --link redis-master redis redis-server /etc/redis/redis-6380.conf

1、说明

  • —link redis-master:建立与master节点之间的容器间的通信,可以在配置文件中使用容器名替换ip

    2、redis-6380.conf 配置文件

    redis-6380.conf.txt
  1. # master节点配置 因为启动的时候指定了 --link 所以直接使用容器名
  2. replicaof redis-master 6379

三、配置 Sentinel 哨兵

1、进入容器里面(每个 redis 容器都需要配置)

  1. docker exec -it redis-master /bin/bash

2、创建 Sentinel 配置文件和日志文件

  1. cd / && mkdir sentinel
  2. cd /sentinel && touch sentinel.conf && touch log.txt

3、修改 sentinel.conf 配置

使用 cat 添加内容,以 EOF 结尾

  1. cat >> ./sentinel.conf <<EOF
  1. sentinel monitor mymaster redis-master 6379 1
  2. #添加为后台运行
  3. daemonize yes
  4. #指定日志目录
  5. logfile "/sentinel/log.txt"

4、启动哨兵

  1. redis-sentinel sentinel.conf

5、查看日志

  1. tail -f log.txt