docker部署redis cluster集群

搭建6个redis组成的redis集群,3主3从

一、运行命令创建文件夹和配置文件

for port in `seq 6601 6606`; do 
    mkdir -p ./${port}/conf 
    touch ./${port}/conf/redis.conf
    mkdir -p ./${port}/data
    echo "port ${port}" >>./${port}/conf/redis.conf
    echo "protected-mode no"  >>./${port}/conf/redis.conf
    echo "cluster-enabled yes" >>./${port}/conf/redis.conf
    echo "cluster-config-file nodes.conf" >>./${port}/conf/redis.conf
    echo "cluster-node-timeout 5000" >>./${port}/conf/redis.conf
    echo "cluster-announce-ip 10.227.65.53" >>./${port}/conf/redis.conf
    echo "cluster-announce-port ${port}" >>./${port}/conf/redis.conf
    echo "cluster-announce-bus-port 1${port}" >>./${port}/conf/redis.conf
    echo "appendonly yes" >>./${port}/conf/redis.conf
done

其中cluster-announce-ip改成自己的机器地址

二、 启动6个redis的docker实例

for port in `seq 6601 6606`; do \
  docker run -d --net host --privileged=true \
  -v $PWD/${port}/conf/redis.conf:/usr/local/etc/redis/redis.conf \
  -v $PWD/${port}/data:/data \
  --restart always --name redis-${port} \
  redis:6.2 redis-server /usr/local/etc/redis/redis.conf; \
done

三、进入其中一个容器把六个实例建成一个集群

进入容器

docker exec -it redis-6601 /bin/bash

建立集群

redis-cli --cluster create 10.227.65.53:6601 10.227.65.53:6602 10.227.65.53:6603 10.227.65.53:6604 10.227.65.53:6605 10.227.65.53:6606 --cluster-replicas 1

其中10.227.65.53换成自己的ip地址

最终显示如下代表成功


image.png

你可能感兴趣的:(docker部署redis cluster集群)