1. #手动配置redis集群,不涉及docker-compose
    2. #创建redis配置文件
    3. for port in $(seq 1 6);
    4. do
    5. mkdir -p /mydata/redis/node-${port}/conf
    6. touch /mydata/redis/node-${port}/conf/redis.conf
    7. cat << EOF >>/mydata/redis/node-${port}/conf/redis.conf
    8. port 6379
    9. bind 0.0.0.0
    10. cluster-enabled yes
    11. cluster-config-file nodes.conf
    12. cluster-node-timeout 5000
    13. cluster-announce-ip 172.38.0.1${port}
    14. cluster-announce-port 6379
    15. cluster-announce-bus-port 16379
    16. appendonly yes
    17. EOF
    18. done
    19. #使用docker启动redis
    20. for port in $(seq 1 6);
    21. do
    22. docker run -p 637${port}:6379 -p 1637${port}:16379 --name redis-${port}
    23. -v /mydata/redis/node-${port}/data:/data
    24. -v /mydata/redis/node-${port}/conf/redis.conf:/etc/redis/redis.conf
    25. -d --net redis --ip 172.38.0.1${port} redis:5.0.9 redis-server /etc/redis/redis.conf
    26. done
    27. #创建redis集群 两种方法
    28. 需要进入redis容器内部
    29. redis-cli --cluster create 172.38.0.11:6379 172.38.0.12:6379 172.38.0.13:6379 172.38.0.14:6379 172.38.0.15:6379 172.38.0.16:6379 --cluster-replicas 1
    30. 在外部使用redis-trib创建
    31. docker run --rm -it --network redis_redis zvelo/redis-trib create --replicas 1 172.38.0.11:6379 172.38.0.12:6379 172.38.0.13:6379 172.38.0.14:6379 172.38.0.15:6379 172.38.0.16:6379