基于docker搭建redis集群的方法

时间:2021-05-19

下载redis镜像

docker pull yyyyttttwwww/redis

取别名

docker tag docker.io/yyyyttttwwww/redis redis

删除原先的镜像标签

docker rmi docker.io/yyyyttttwwww/redis

启动6个节点的redis容器 注意网络用的是net1

docker run -it -d --name r1 -p 5001:6379 --net=net1 --ip 172.19.0.101 redis bashdocker run -it -d --name r2 -p 5002:6379 --net=net1 --ip 172.19.0.102 redis bashdocker run -it -d --name r3 -p 5003:6379 --net=net1 --ip 172.19.0.103 redis bashdocker run -it -d --name r4 -p 5004:6379 --net=net1 --ip 172.19.0.104 redis bashdocker run -it -d --name r5 -p 5005:6379 --net=net1 --ip 172.19.0.105 redis bashdocker run -it -d --name r6 -p 5006:6379 --net=net1 --ip 172.19.0.106 redis bash

创建的容器默认是没有启动,所以需要一个一个启动

docker exec -it -u 0 r1 bash/usr/redis/src/redis-server /usr/redis/redis.confexit docker exec -it -u 0 r2 bash/usr/redis/src/redis-server /usr/redis/redis.confexit docker exec -it -u 0 r3 bash/usr/redis/src/redis-server /usr/redis/redis.confexit docker exec -it -u 0 r4 bash/usr/redis/src/redis-server /usr/redis/redis.confexit docker exec -it -u 0 r5 bash/usr/redis/src/redis-server /usr/redis/redis.confexit docker exec -it -u 0 r6 bash/usr/redis/src/redis-server /usr/redis/redis.confexit

进入任意一个容器例如r1 然后利用ruby脚本启动集群

docker exec -it -u 0 r1 bash /usr/redis/src/redis-trib.rb create --replicas 1 172.19.0.101:6379 172.19.0.102:6379 172.19.0.103:6379 172.19.0.104:6379 172.19.0.105:6379 172.19.0.106:6379

输入yes即可创建成功,执行脚本时终端输出的效果如下:

进入一个节点 的命令行连接到redis集群,查看集群状态

可以看到有3个master节点和3个slave节点

到此这篇关于docker搭建redis集群的文章就介绍到这了,更多相关docker搭建redis集群内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章