redis集群部署三主三从 docker-compose编排
时间: 2023-07-05 13:15:02 浏览: 98
好的,我可以为您提供一个基于docker-compose编排的Redis集群部署方案,包括3个主节点和3个从节点。以下是示例代码:
```
version: '3'
services:
redis-1:
image: redis:latest
command: redis-server --port 6379 --cluster-enabled yes --cluster-config-file /data/nodes.conf --cluster-node-timeout 5000 --appendonly yes
ports:
- "6379:6379"
volumes:
- redis-data-1:/data
networks:
- redis-cluster
redis-2:
image: redis:latest
command: redis-server --port 6380 --cluster-enabled yes --cluster-config-file /data/nodes.conf --cluster-node-timeout 5000 --appendonly yes
ports:
- "6380:6380"
volumes:
- redis-data-2:/data
networks:
- redis-cluster
redis-3:
image: redis:latest
command: redis-server --port 6381 --cluster-enabled yes --cluster-config-file /data/nodes.conf --cluster-node-timeout 5000 --appendonly yes
ports:
- "6381:6381"
volumes:
- redis-data-3:/data
networks:
- redis-cluster
redis-4:
image: redis:latest
command: redis-server --port 6382 --cluster-enabled yes --cluster-config-file /data/nodes.conf --cluster-node-timeout 5000 --appendonly yes
ports:
- "6382:6382"
volumes:
- redis-data-4:/data
networks:
- redis-cluster
redis-5:
image: redis:latest
command: redis-server --port 6383 --cluster-enabled yes --cluster-config-file /data/nodes.conf --cluster-node-timeout 5000 --appendonly yes
ports:
- "6383:6383"
volumes:
- redis-data-5:/data
networks:
- redis-cluster
redis-6:
image: redis:latest
command: redis-server --port 6384 --cluster-enabled yes --cluster-config-file /data/nodes.conf --cluster-node-timeout 5000 --appendonly yes
ports:
- "6384:6384"
volumes:
- redis-data-6:/data
networks:
- redis-cluster
volumes:
redis-data-1:
redis-data-2:
redis-data-3:
redis-data-4:
redis-data-5:
redis-data-6:
networks:
redis-cluster:
```
这个docker-compose文件会启动6个Redis容器,其中3个是主节点,3个是从节点,它们都运行在同一个网络下(`redis-cluster`)。每个容器都映射了一个端口,你可以通过这些端口直接访问Redis实例。
要启动集群,你需要在其中一个Redis容器中执行以下命令:
```
redis-cli --cluster create
```
然后按照提示输入所有Redis实例的IP和端口,直到集群创建完成。注意,这个过程只需要在一个容器中执行一次即可。
希望这个部署方案对您有所帮助!
阅读全文