Skip to content

Instantly share code, notes, and snippets.

@jirevwe
Created July 12, 2023 16:20
Show Gist options
  • Save jirevwe/a538f75857962e8a39d6af8d08ce68f4 to your computer and use it in GitHub Desktop.
Save jirevwe/a538f75857962e8a39d6af8d08ce68f4 to your computer and use it in GitHub Desktop.
Local Redis Cluster Setup
version: "3"
services:
redis1:
image: redis:latest
command: redis-server --port 7001 --cluster-enabled yes --cluster-config-file nodes.conf --cluster-node-timeout 5000 --appendonly yes --cluster-announce-ip 172.16.0.11 --cluster-announce-port 7001
ports:
- 7001:7001
volumes:
- ./data/redis1:/data
networks:
redis-cluster-network:
ipv4_address: 172.16.0.11
redis2:
image: redis:latest
command: redis-server --port 7002 --cluster-enabled yes --cluster-config-file nodes.conf --cluster-node-timeout 5000 --appendonly yes --cluster-announce-ip 172.16.0.12 --cluster-announce-port 7002
ports:
- 7002:7002
volumes:
- ./data/redis2:/data
networks:
redis-cluster-network:
ipv4_address: 172.16.0.12
redis3:
image: redis:latest
command: redis-server --port 7003 --cluster-enabled yes --cluster-config-file nodes.conf --cluster-node-timeout 5000 --appendonly yes --cluster-announce-ip 172.16.0.13 --cluster-announce-port 7003
ports:
- 7003:7003
volumes:
- ./data/redis3:/data
networks:
redis-cluster-network:
ipv4_address: 172.16.0.13
redis4:
image: redis:latest
command: redis-server --port 7004 --cluster-enabled yes --cluster-config-file nodes.conf --cluster-node-timeout 5000 --appendonly yes --cluster-announce-ip 172.16.0.14 --cluster-announce-port 7004
ports:
- 7004:7004
volumes:
- ./data/redis4:/data
networks:
redis-cluster-network:
ipv4_address: 172.16.0.14
redis5:
image: redis:latest
command: redis-server --port 7005 --cluster-enabled yes --cluster-config-file nodes.conf --cluster-node-timeout 5000 --appendonly yes --cluster-announce-ip 172.16.0.15 --cluster-announce-port 7005
ports:
- 7005:7005
volumes:
- ./data/redis5:/data
networks:
redis-cluster-network:
ipv4_address: 172.16.0.15
redis6:
image: redis:latest
command: redis-server --port 7006 --cluster-enabled yes --cluster-config-file nodes.conf --cluster-node-timeout 6000 --appendonly yes --cluster-announce-ip 172.16.0.16 --cluster-announce-port 7006
ports:
- 7006:7006
volumes:
- ./data/redis6:/data
networks:
redis-cluster-network:
ipv4_address: 172.16.0.16
init:
image: redis:latest
command:
- /bin/bash
- -c
- |
echo "yes" | redis-cli --cluster create redis1:7001 redis2:7002 redis3:7003 redis4:7004 redis5:7005 redis6:7006 --cluster-replicas 1
volumes:
- ./data/redis6:/data
depends_on:
- redis1
- redis2
- redis3
- redis4
- redis5
- redis6
networks:
- redis-cluster-network
networks:
redis-cluster-network:
driver: bridge
ipam:
config:
- subnet: 172.16.0.0/24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment