如何搭建Redis集群 Docker

一、整体流程

journey
    title Redis集群搭建流程

    section 创建集群
        创建虚拟网络 -> 创建Redis主节点1 -> 创建Redis主节点2 -> 创建Redis主节点3 -> 创建Redis从节点1 -> 创建Redis从节点2 -> 创建Redis从节点3 -> 部署集群

    section 验证集群
        连接Redis集群 -> 验证集群状态

二、具体步骤

步骤 操作内容 代码示例
1 创建Docker虚拟网络 docker network create redis-net
2 创建Redis主节点1 docker run -d --name redis-master1 --net redis-net redis redis-server --appendonly yes
3 创建Redis主节点2 docker run -d --name redis-master2 --net redis-net redis redis-server --appendonly yes
4 创建Redis主节点3 docker run -d --name redis-master3 --net redis-net redis redis-server --appendonly yes
5 创建Redis从节点1 docker run -d --name redis-slave1 --net redis-net redis redis-server --appendonly yes --slaveof redis-master1 6379
6 创建Redis从节点2 docker run -d --name redis-slave2 --net redis-net redis redis-server --appendonly yes --slaveof redis-master2 6379
7 创建Redis从节点3 docker run -d --name redis-slave3 --net redis-net redis redis-server --appendonly yes --slaveof redis-master3 6379
8 部署Redis集群 docker exec -it redis-master1 redis-cli --cluster create redis-master1:6379 redis-master2:6379 redis-master3:6379 --cluster-replicas 1

三、代码解释

  • docker network create redis-net:创建一个名为redis-net的Docker虚拟网络,用于容器间通信。
  • docker run -d --name redis-master1 --net redis-net redis redis-server --appendonly yes:在redis-net网络中创建名为redis-master1的Redis主节点容器,开启AOF持久化。
  • docker run -d --name redis-slave1 --net redis-net redis redis-server --appendonly yes --slaveof redis-master1 6379:在redis-net网络中创建名为redis-slave1的Redis从节点容器,指定其复制redis-master1的数据。
  • docker exec -it redis-master1 redis-cli --cluster create redis-master1:6379 redis-master2:6379 redis-master3:6379 --cluster-replicas 1:在redis-master1容器中执行创建Redis集群的命令,指定主节点列表和从节点数量。

四、验证集群

1. 连接Redis集群

docker exec -it redis-master1 redis-cli -c -p 6379

2. 验证集群状态

redis-cli -c -h redis-master1 -p 6379 cluster info

至此,整个Redis集群搭建过程已经完成。小白开发者可以根据以上步骤和代码示例来实现Redis集群搭建,祝他在工作中有所收获!