110 lines
2.7 KiB
YAML
110 lines
2.7 KiB
YAML
services:
|
|
scylla-node-1:
|
|
image: scylladb/scylla:latest
|
|
container_name: scylla-node-1
|
|
command: --smp 1 --memory 750M --overprovisioned 1 --seeds=scylla-node-1
|
|
ports:
|
|
- "9042:9042" # CQL
|
|
volumes:
|
|
- scylla-data-1:/var/lib/scylla
|
|
networks:
|
|
scylla-net:
|
|
ipv4_address: 172.20.0.2
|
|
|
|
scylla-node-2:
|
|
image: scylladb/scylla:latest
|
|
container_name: scylla-node-2
|
|
command: --smp 1 --memory 750M --overprovisioned 1 --seeds=scylla-node-1
|
|
volumes:
|
|
- scylla-data-2:/var/lib/scylla
|
|
networks:
|
|
scylla-net:
|
|
ipv4_address: 172.20.0.3
|
|
|
|
scylla-node-3:
|
|
image: scylladb/scylla:latest
|
|
container_name: scylla-node-3
|
|
command: --smp 1 --memory 750M --overprovisioned 1 --seeds=scylla-node-1
|
|
volumes:
|
|
- scylla-data-3:/var/lib/scylla
|
|
networks:
|
|
scylla-net:
|
|
ipv4_address: 172.20.0.4
|
|
|
|
redis-node-1:
|
|
image: redis:latest
|
|
container_name: redis-node-1
|
|
command: redis-server --port 7000 --cluster-enabled yes --cluster-config-file nodes.conf --appendonly yes
|
|
ports:
|
|
- "7000:7000"
|
|
healthcheck:
|
|
test: ["CMD", "redis-cli", "-p", "7000", "ping"]
|
|
interval: 5s
|
|
timeout: 3s
|
|
retries: 5
|
|
networks:
|
|
redis-net:
|
|
ipv4_address: 172.20.1.2
|
|
|
|
redis-node-2:
|
|
image: redis:latest
|
|
container_name: redis-node-2
|
|
command: redis-server --port 7001 --cluster-enabled yes --cluster-config-file nodes.conf --appendonly yes
|
|
ports:
|
|
- "7001:7001"
|
|
healthcheck:
|
|
test: ["CMD", "redis-cli", "-p", "7001", "ping"]
|
|
interval: 5s
|
|
timeout: 3s
|
|
retries: 5
|
|
networks:
|
|
redis-net:
|
|
ipv4_address: 172.20.1.3
|
|
|
|
redis-node-3:
|
|
image: redis:latest
|
|
container_name: redis-node-3
|
|
command: redis-server --port 7002 --cluster-enabled yes --cluster-config-file nodes.conf --appendonly yes
|
|
ports:
|
|
- "7002:7002"
|
|
healthcheck:
|
|
test: ["CMD", "redis-cli", "-p", "7002", "ping"]
|
|
interval: 5s
|
|
timeout: 3s
|
|
retries: 5
|
|
networks:
|
|
redis-net:
|
|
ipv4_address: 172.20.1.4
|
|
|
|
redis-init:
|
|
image: redis:latest
|
|
container_name: redis-init
|
|
command: redis-cli --cluster create 172.20.1.2:7000 172.20.1.3:7001 172.20.1.4:7002 --cluster-replicas 0 --cluster-yes
|
|
restart: no
|
|
depends_on:
|
|
redis-node-1:
|
|
condition: service_healthy
|
|
redis-node-2:
|
|
condition: service_healthy
|
|
redis-node-3:
|
|
condition: service_healthy
|
|
networks:
|
|
- redis-net
|
|
|
|
volumes:
|
|
scylla-data-1:
|
|
scylla-data-2:
|
|
scylla-data-3:
|
|
|
|
networks:
|
|
scylla-net:
|
|
driver: bridge
|
|
ipam:
|
|
config:
|
|
- subnet: 172.20.0.0/24
|
|
|
|
redis-net:
|
|
driver: bridge
|
|
ipam:
|
|
config:
|
|
- subnet: 172.20.1.0/24 |