Docker中搭建Redis集群

参考大佬博文:https://www.cnblogs.com/answerThe/p/11307017.html

集群属于3+3=6;不然要报错。
docker pull redis

在/home/redis-cluster目录下操作:

docker network create redis-net    # 自定义网络
docker network ls          # 查看网络是否创建成功
docker network inspect redis-net  # 查看自定义网络IP

创建文件redis-cluster.tmpl
【protected-mode no
port ${PORT}
daemonize no
appendonly yes
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 15000
cluster-announce-ip 172.18.0.${TEMP}
cluster-announce-port ${PORT}
cluster-announce-bus-port 1${PORT}

创建文件:creatRedisCluster.sh并执行后tree ../redis-cluster查看目录。
【for port in `seq 6379 6384`; do base=6377 && ip=$[port-base] mkdir -p ${port}/conf && PORT=${port} TEMP=${ip} envsubst < redis-cluster.tmpl > ${port}/conf/redis.conf && mkdir -p ${port}/data; done】

创建文件:creatDocker.sh
【for port in `seq 6379 6384`; do docker run -p ${port}:${port} -p 1${port}:1${port} --name redis-${port} --privileged=true -v /home/redis-cluster/${port}/conf/redis.conf:/usr/local/etc/redis/redis.conf -v /home/redis-cluster/${port}/data:/data --name redis-${port} --net redis-net --rm -d redis:latest redis-server /usr/local/etc/redis/redis.conf;done】

进入6379容器执行下面命令:
/usr/local/bin/redis-cli --cluster create 172.18.0.2:6379 172.18.0.3:6380 172.18.0.4:6381 172.18.0.5:6382 172.18.0.6:6383 172.18.0.7:6384 --cluster-replicas 1

测试:
##set
/usr/local/bin/redis-cli -c -h 127.18.0.2 -p 7001
set aaa 111
##get
docker exec -it redis-7002 /usr/local/bin/redis-cli -c -h 172.18.0.3 -p 7002
get aaa

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值