version: '2.1' networks: shared: driver: bridge dc0: driver: bridge dc1: driver: bridge dc2: driver: bridge services: # DC 0 ROACHES roach-0: container_name: roach-0 image: cockroachdb/cockroach:v1.1.2 networks: - shared - dc0 command: start --logtostderr=INFO --insecure --locality=datacenter=dc-0 healthcheck: test: ./cockroach sql --insecure -e "show databases;" interval: 1s ports: - 8000:8080 - 9000:26257 roach-1: container_name: roach-1 image: cockroachdb/cockroach:v1.1.2 networks: - shared - dc0 command: start --logtostderr=INFO --insecure --locality=datacenter=dc-0 --join=roach-0 healthcheck: test: ./cockroach sql --insecure -e "show databases;" interval: 1s ports: - 8001:8080 - 9001:26257 depends_on: roach-0: condition: service_healthy # DC 1 ROACHES roach-2: container_name: roach-2 image: cockroachdb/cockroach:v1.1.2 networks: - shared - dc1 command: start --logtostderr=INFO --insecure --locality=datacenter=dc-1 --join=roach-0 healthcheck: test: ./cockroach sql --insecure -e "show databases;" interval: 1s ports: - 8002:8080 - 9002:26257 depends_on: roach-0: condition: service_healthy roach-3: container_name: roach-3 image: cockroachdb/cockroach:v1.1.2 networks: - shared - dc1 command: start --logtostderr=INFO --insecure --locality=datacenter=dc-1 --join=roach-0 healthcheck: test: ./cockroach sql --insecure -e "show databases;" interval: 1s ports: - 8003:8080 - 9003:26257 depends_on: roach-0: condition: service_healthy # DC 2 ROACHES roach-4: container_name: roach-4 image: cockroachdb/cockroach:v1.1.2 networks: - shared - dc2 command: start --logtostderr=INFO --insecure --locality=datacenter=dc-2 --join=roach-0 healthcheck: test: ./cockroach sql --insecure -e "show databases;" interval: 1s ports: - 8004:8080 - 9004:26257 depends_on: roach-0: condition: service_healthy roach-5: container_name: roach-5 image: cockroachdb/cockroach:v1.1.2 networks: - shared - dc2 command: start --logtostderr=INFO --insecure --locality=datacenter=dc-2 --join=roach-0 healthcheck: test: ./cockroach sql --insecure -e "show databases;" interval: 1s ports: - 8005:8080 - 9005:26257 depends_on: roach-0: condition: service_healthy roach-6: container_name: roach-6 image: cockroachdb/cockroach:v1.1.2 networks: - shared - dc2 command: start --logtostderr=INFO --insecure --locality=datacenter=dc-2 --join=roach-0 healthcheck: test: ./cockroach sql --insecure -e "show databases;" interval: 1s ports: - 8006:8080 - 9006:26257 depends_on: roach-0: condition: service_healthy roach-7: container_name: roach-7 image: cockroachdb/cockroach:v1.1.2 networks: - shared - dc2 command: start --logtostderr=INFO --insecure --locality=datacenter=dc-2 --join=roach-0 healthcheck: test: ./cockroach sql --insecure -e "show databases;" interval: 1s ports: - 8007:8080 - 9007:26257 depends_on: roach-0: condition: service_healthy