1,创建docker网络"redis-net":
执行命令:sudo docker network create --driver bridge redis-net
最后一条记录系新创建连接
2,创建主容器实例master-redis:
配置文件下载地址:https://redis.io/topics/config/ 选择对应大版本号下载,小版本号忽略
-v这是指volume,把配置文件/home/myubuntu/upload/redis.conf挂靠到/usr/local/etc/redis/redis.conf
--network “redis-net ” 系上面创建的网络
修改配置/home/myubuntu/upload/redis.conf 找到 bind127.0.0.1改为 bind 0.0.0.0
执行命令:
sudo docker run -v /home/myubuntu/upload/redis.conf:/usr/local/etc/redis/redis.conf --name master-redis --network redis-net --rm redis redis-server /usr/local/etc/redis/redis.conf
查看“redit-net"网络,执行命令:sudo docker network inspect redis-net
3,创建从容器实例
上面"IPv4Address": "172.18.0.2/16" 系主容器地址,下面会用到
复制redis.conf主容器配置文件到/home/myubuntu/upload/redis2.conf
在“redis2.conf”查找"# replicaof <masterip> <masterport>"修改为“replicaof 172.18.0.2 6379”
执行命令:
sudo docker run -v /home/myubuntu/upload/redis2.conf:/usr/local/etc/redis/redis2.conf --name slave-redis --network redis-net --rm redis redis-server /usr/local/etc/redis/redis2.conf
下图为,主容器连接成功提示
下图为,从容器连接成功提示
4,打开主容器客户端,曾,删,改,从容器会发生变化
5,主从容器设置密码,重启容器才生效
主容器配置文件redis.conf:# requirepass foobared 修改为 requirepass 123456
从容器配置文件redis2.conf:# masterauth <master-password> 修改为 masterauth 123456