dockerizing_cassandra/compose.yml

104 lines
2.5 KiB
YAML
Raw Normal View History

2024-07-24 15:03:39 +02:00
services:
cassandra1:
build: .
2024-07-24 15:03:39 +02:00
container_name: cassandra1
env_file:
- .env
environment:
- CASSANDRA_BROADCAST_ADDRESS=cassandra1
2024-07-24 15:41:02 +02:00
- CASSANDRA_LISTEN_ADDRESS=cassandra1
- CASSANDRA_RPC_ADDRESS=cassandra1
- CASSANDRA_DC=DC1
- CASSANDRA_RACK=RAC1
2024-07-24 15:03:39 +02:00
- PRIMARY_NODE=true
volumes:
2024-07-30 17:03:33 +02:00
- ./scripts:/scripts
- ./data/dumps/node1:/dump/snapshot
- ./data/dumps/schema:/dump/schema
2024-07-24 15:03:39 +02:00
- ./data/volumes/node1:/var/lib/cassandra
- ./data/logs/node1:/var/log/cassandra
healthcheck:
test: ["CMD-SHELL", "nodetool status"]
interval: 2m
start_period: 2m
timeout: 10s
retries: 3
2024-07-24 15:03:39 +02:00
ports:
2024-10-30 12:40:35 +01:00
- "9042:9042" # Cassandra default port for CQL
2024-07-24 15:03:39 +02:00
networks:
- cassandra-net
restart:
on-failure
2024-07-24 15:03:39 +02:00
cassandra2:
build: .
2024-07-24 15:03:39 +02:00
container_name: cassandra2
env_file:
- .env
environment:
- CASSANDRA_BROADCAST_ADDRESS=cassandra2
2024-07-24 15:41:02 +02:00
- CASSANDRA_LISTEN_ADDRESS=cassandra2
- CASSANDRA_RPC_ADDRESS=cassandra2
- CASSANDRA_DC=DC1
- CASSANDRA_RACK=RAC1
2024-07-24 15:03:39 +02:00
- PRIMARY_NODE=false
healthcheck:
test: ["CMD-SHELL", "nodetool status"]
interval: 2m
start_period: 2m
timeout: 10s
retries: 3
2024-07-24 15:03:39 +02:00
volumes:
2024-07-30 17:03:33 +02:00
- ./scripts:/scripts
- ./data/dumps/node2:/dump/snapshot
- ./data/dumps/schema:/dump/schema
2024-07-24 15:03:39 +02:00
- ./data/volumes/node2:/var/lib/cassandra
- ./data/logs/node2:/var/log/cassandra
2024-07-24 15:03:39 +02:00
networks:
- cassandra-net
depends_on:
cassandra1:
condition: service_healthy
2024-10-15 16:48:20 +02:00
ports:
2024-10-30 12:40:35 +01:00
- "9043:9042" # Cassandra instance 2 CQL port
restart:
on-failure
2024-07-24 15:03:39 +02:00
cassandra3:
build: .
2024-07-24 15:03:39 +02:00
container_name: cassandra3
env_file:
- .env
environment:
- CASSANDRA_BROADCAST_ADDRESS=cassandra3
2024-07-24 15:41:02 +02:00
- CASSANDRA_LISTEN_ADDRESS=cassandra3
- CASSANDRA_RPC_ADDRESS=cassandra3
- CASSANDRA_DC=DC1
- CASSANDRA_RACK=RAC1
2024-07-24 15:03:39 +02:00
- PRIMARY_NODE=false
healthcheck:
test: ["CMD-SHELL", "nodetool status"]
interval: 2m
start_period: 2m
timeout: 10s
retries: 3
2024-07-24 15:03:39 +02:00
volumes:
2024-07-30 17:03:33 +02:00
- ./scripts:/scripts
- ./data/dumps/node3:/dump/snapshot
- ./data/dumps/schema:/dump/schema
2024-07-24 15:03:39 +02:00
- ./data/volumes/node3:/var/lib/cassandra
- ./data/logs/node3:/var/log/cassandra
2024-07-24 15:03:39 +02:00
networks:
- cassandra-net
depends_on:
cassandra2:
condition: service_healthy
2024-10-15 16:48:20 +02:00
ports:
2024-10-30 12:40:35 +01:00
- "9044:9042" # Cassandra instance 3 CQL port
restart:
on-failure
2024-07-24 15:03:39 +02:00
networks:
cassandra-net:
driver: bridge