mirror of
https://github.com/Infisical/infisical.git
synced 2026-01-08 15:13:55 -05:00
167 lines
4.3 KiB
YAML
167 lines
4.3 KiB
YAML
version: "3.8"
|
|
|
|
services:
|
|
redis-master:
|
|
image: redis:latest
|
|
container_name: redis-master
|
|
hostname: redis-master
|
|
ports:
|
|
- "6380:6379"
|
|
volumes:
|
|
- ./data/master:/data
|
|
command:
|
|
[
|
|
"redis-server",
|
|
"--appendonly",
|
|
"yes",
|
|
"--repl-diskless-load",
|
|
"on-empty-db",
|
|
"--replica-announce-ip",
|
|
"${HOST_IP}",
|
|
"--replica-announce-port",
|
|
"6380",
|
|
"--protected-mode",
|
|
"no",
|
|
]
|
|
networks:
|
|
redis-net:
|
|
ipv4_address: 172.21.0.3
|
|
|
|
redis-slave-1:
|
|
image: redis:latest
|
|
container_name: redis-slave-1
|
|
hostname: redis-slave-1
|
|
depends_on:
|
|
- redis-master
|
|
ports:
|
|
- "6381:6379"
|
|
volumes:
|
|
- ./data/slave1:/data
|
|
command:
|
|
[
|
|
"redis-server",
|
|
"--appendonly",
|
|
"yes",
|
|
"--replicaof",
|
|
"redis-master",
|
|
"6379",
|
|
"--repl-diskless-load",
|
|
"on-empty-db",
|
|
"--replica-announce-ip",
|
|
"${HOST_IP}",
|
|
"--replica-announce-port",
|
|
"6381",
|
|
"--protected-mode",
|
|
"no",
|
|
]
|
|
networks:
|
|
redis-net:
|
|
ipv4_address: 172.21.0.4
|
|
|
|
redis-slave-2:
|
|
image: redis:latest
|
|
container_name: redis-slave-2
|
|
hostname: redis-slave-2
|
|
depends_on:
|
|
- redis-master
|
|
ports:
|
|
- "6382:6379"
|
|
volumes:
|
|
- ./data/slave2:/data
|
|
command:
|
|
[
|
|
"redis-server",
|
|
"--appendonly",
|
|
"yes",
|
|
"--replicaof",
|
|
"redis-master",
|
|
"6379",
|
|
"--repl-diskless-load",
|
|
"on-empty-db",
|
|
"--replica-announce-ip",
|
|
"${HOST_IP}",
|
|
"--replica-announce-port",
|
|
"6382",
|
|
"--protected-mode",
|
|
"no",
|
|
]
|
|
networks:
|
|
redis-net:
|
|
ipv4_address: 172.21.0.5
|
|
|
|
sentinel-1:
|
|
image: redis:latest
|
|
container_name: sentinel-1
|
|
hostname: sentinel-1
|
|
depends_on:
|
|
- redis-master
|
|
ports:
|
|
- "26379:26379"
|
|
command: >
|
|
sh -c 'echo "bind 0.0.0.0" > /etc/sentinel.conf &&
|
|
echo "sentinel monitor mymaster ${HOST_IP} 6380 2" >> /etc/sentinel.conf &&
|
|
echo "sentinel resolve-hostnames yes" >> /etc/sentinel.conf &&
|
|
echo "sentinel down-after-milliseconds mymaster 10000" >> /etc/sentinel.conf &&
|
|
echo "sentinel failover-timeout mymaster 10000" >> /etc/sentinel.conf &&
|
|
echo "sentinel parallel-syncs mymaster 1" >> /etc/sentinel.conf &&
|
|
redis-sentinel /etc/sentinel.conf'
|
|
networks:
|
|
redis-net:
|
|
ipv4_address: 172.21.0.6
|
|
|
|
sentinel-2:
|
|
image: redis:latest
|
|
container_name: sentinel-2
|
|
hostname: sentinel-2
|
|
depends_on:
|
|
- redis-master
|
|
ports:
|
|
- "26380:26379"
|
|
command: >
|
|
sh -c 'echo "bind 0.0.0.0" > /etc/sentinel.conf &&
|
|
echo "sentinel monitor mymaster ${HOST_IP} 6380 2" >> /etc/sentinel.conf &&
|
|
echo "sentinel resolve-hostnames yes" >> /etc/sentinel.conf &&
|
|
echo "sentinel down-after-milliseconds mymaster 10000" >> /etc/sentinel.conf &&
|
|
echo "sentinel failover-timeout mymaster 10000" >> /etc/sentinel.conf &&
|
|
echo "sentinel parallel-syncs mymaster 1" >> /etc/sentinel.conf &&
|
|
redis-sentinel /etc/sentinel.conf'
|
|
networks:
|
|
redis-net:
|
|
ipv4_address: 172.21.0.7
|
|
|
|
sentinel-3:
|
|
image: redis:latest
|
|
container_name: sentinel-3
|
|
hostname: sentinel-3
|
|
depends_on:
|
|
- redis-master
|
|
ports:
|
|
- "26381:26379"
|
|
command: >
|
|
sh -c 'echo "bind 0.0.0.0" > /etc/sentinel.conf &&
|
|
echo "sentinel monitor mymaster ${HOST_IP} 6380 2" >> /etc/sentinel.conf &&
|
|
echo "sentinel resolve-hostnames yes" >> /etc/sentinel.conf &&
|
|
echo "sentinel down-after-milliseconds mymaster 10000" >> /etc/sentinel.conf &&
|
|
echo "sentinel failover-timeout mymaster 10000" >> /etc/sentinel.conf &&
|
|
echo "sentinel parallel-syncs mymaster 1" >> /etc/sentinel.conf &&
|
|
redis-sentinel /etc/sentinel.conf'
|
|
networks:
|
|
redis-net:
|
|
ipv4_address: 172.21.0.8
|
|
|
|
redisinsight:
|
|
image: redis/redisinsight:latest
|
|
container_name: redisinsight
|
|
ports:
|
|
- "5540:5540"
|
|
networks:
|
|
redis-net:
|
|
ipv4_address: 172.21.0.9
|
|
|
|
networks:
|
|
redis-net:
|
|
driver: bridge
|
|
ipam:
|
|
config:
|
|
- subnet: 172.21.0.0/16
|