站长资源服务器

基于docker搭建redis集群的方法

整理:jimmy2024/12/23浏览2
简介下载redis镜像docker pull yyyyttttwwww/redis取别名docker tag docker.io/yyyyttttwwww/redis redis 删除原先的镜像标签docker rmi docker.io/yyyyttttwwww/redis启动6个节点的redis容器

下载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 bash
docker run -it -d --name r2 -p 5002:6379 --net=net1 --ip 172.19.0.102 redis bash
docker run -it -d --name r3 -p 5003:6379 --net=net1 --ip 172.19.0.103 redis bash
docker run -it -d --name r4 -p 5004:6379 --net=net1 --ip 172.19.0.104 redis bash
docker run -it -d --name r5 -p 5005:6379 --net=net1 --ip 172.19.0.105 redis bash
docker 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.conf
exit
 
docker exec -it -u 0 r2 bash
/usr/redis/src/redis-server /usr/redis/redis.conf
exit
 
docker exec -it -u 0 r3 bash
/usr/redis/src/redis-server /usr/redis/redis.conf
exit
 
docker exec -it -u 0 r4 bash
/usr/redis/src/redis-server /usr/redis/redis.conf
exit
 
docker exec -it -u 0 r5 bash
/usr/redis/src/redis-server /usr/redis/redis.conf
exit
 
docker exec -it -u 0 r6 bash
/usr/redis/src/redis-server /usr/redis/redis.conf
exit

进入任意一个容器例如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即可创建成功,执行脚本时终端输出的效果如下:

基于docker搭建redis集群的方法

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

基于docker搭建redis集群的方法

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