准备工作
- make /home/docker/redis
- mkdir redis-6388-data
- mkdir redis-6381-data
- mkdir redis-6380-data
- touch redis-6388.conf
- touch redis-6381.conf
- touch redis-6380.conf
主
1. port 6388
1. logfile "redis-6388.log"
1. dir /data
1. appendonly yes
1. appendfilename appendonly.aof
从
1. port 6380
1. logfile "redis-6380.log"
1. dir /data
1. appendonly yes
1. appendfilename appendonly.aof
1. slaveof ip 6388
启动容器
docker run -p 6388:6388 --net=host --restart=always --name redis-6388 -v /home/docker/redis/redis-6388.conf:/etc/redis/redis-6388.conf -v /home/docker/redis/redis-6388-data:/data -d redis redis-server /etc/redis/redis-6388.conf
执行结果
1. 进入容器 redis-cli -p 6388
2. info replication 查看状态
主

从

3. 在redis 里创建 redis-master redis-sales1 redis-sales2\ 3 个数据库 进行存值 取值 测试
4. 一定要在服务器里 开放端口

启动哨兵
- madir sentinel-26388-data
- madir sentinel-26381-data
- madir sentinel-26380-data
- touch sentinel-26388.conf
- touch sentinel-26381.conf
- touch sentinel-26380.conf
1. vim sentinel-26388.conf
2. port 26388
dir "/data"
logfile "sentinel-26388.log"
sentinel monitor mymaster ip 6388 2
sentinel down-after-milliseconds mymaster 10000
sentinel failover-timeout mymaster 60000
3. 同上
docker run -p 26388:26388 --restart=always --name sentinel-26388 -v/home/docker/redis/sentinel-26388.conf:/etc/redis/sentinel.conf -v /home/docker/redis/sentinel-26388-data:/data -d redis redis-sentinel /etc/redis/sentinel.conf
1. 进入容器 redis-cli -p 26388
2. info sentinel /查看哨兵状态
3. 停止6388 容器 docker stop redis-6388 测试哨兵 是否配置成功