version: "3" services: pilosa0: image: build/pilosa build: context: . dockerfile: Dockerfile.pilosa environment: PILOSA_ADVERTISE: pilosa0:10101 PILOSA_ADVERTISE_GRPC: pilosa0:20101 PILOSA_CLUSTER_REPLICAS: 1 PILOSA_DATA_DIR: /data/pilosa0 PILOSA_ETCD_ADVERTISE_CLIENT_ADDRESS: http://pilosa0:10201 PILOSA_ETCD_ADVERTISE_PEER_ADDRESS: http://pilosa0:10301 PILOSA_ETCD_INITIAL_CLUSTER: pilosa0=http://pilosa0:10301,pilosa1=http://pilosa1:10301,pilosa2=http://pilosa2:10301 PILOSA_ETCD_LISTEN_CLIENT_ADDRESS: http://0.0.0.0:10201 PILOSA_ETCD_LISTEN_PEER_ADDRESS: http://0.0.0.0:10301 PILOSA_NAME: pilosa0 PILOSA_STORAGE_BACKEND: ${PILOSA_STORAGE_BACKEND:-rbf} volumes: - data:/data healthcheck: test: x=$$(curl -s localhost:10101/status | jq -r ".state") && [[ "$$x" == "NORMAL" ]] || $$(exit 1) interval: 10s timeout: 5s retries: 5 pilosa1: image: build/pilosa build: context: . dockerfile: Dockerfile.pilosa environment: PILOSA_ADVERTISE: pilosa1:10101 PILOSA_ADVERTISE_GRPC: pilosa1:20101 PILOSA_CLUSTER_REPLICAS: 1 PILOSA_DATA_DIR: /data/pilosa1 PILOSA_ETCD_ADVERTISE_CLIENT_ADDRESS: http://pilosa1:10201 PILOSA_ETCD_ADVERTISE_PEER_ADDRESS: http://pilosa1:10301 PILOSA_ETCD_INITIAL_CLUSTER: pilosa0=http://pilosa0:10301,pilosa1=http://pilosa1:10301,pilosa2=http://pilosa2:10301 PILOSA_ETCD_LISTEN_CLIENT_ADDRESS: http://0.0.0.0:10201 PILOSA_ETCD_LISTEN_PEER_ADDRESS: http://0.0.0.0:10301 PILOSA_NAME: pilosa1 PILOSA_STORAGE_BACKEND: ${PILOSA_STORAGE_BACKEND:-rbf} volumes: - data:/data pilosa2: image: build/pilosa build: context: . dockerfile: Dockerfile.pilosa environment: PILOSA_ADVERTISE: pilosa2:10101 PILOSA_ADVERTISE_GRPC: pilosa2:20101 PILOSA_CLUSTER_REPLICAS: 1 PILOSA_DATA_DIR: /data/pilosa2 PILOSA_ETCD_ADVERTISE_CLIENT_ADDRESS: http://pilosa2:10201 PILOSA_ETCD_ADVERTISE_PEER_ADDRESS: http://pilosa2:10301 PILOSA_ETCD_INITIAL_CLUSTER: pilosa0=http://pilosa0:10301,pilosa1=http://pilosa1:10301,pilosa2=http://pilosa2:10301 PILOSA_ETCD_LISTEN_CLIENT_ADDRESS: http://0.0.0.0:10201 PILOSA_ETCD_LISTEN_PEER_ADDRESS: http://0.0.0.0:10301 PILOSA_NAME: pilosa2 PILOSA_STORAGE_BACKEND: ${PILOSA_STORAGE_BACKEND:-rbf} volumes: - data:/data pilosax: image: build/pilosa build: context: . dockerfile: Dockerfile.pilosa environment: PILOSA_ADVERTISE: pilosax:10101 PILOSA_ADVERTISE_GRPC: pilosax:20101 PILOSA_CLUSTER_REPLICAS: 1 PILOSA_DATA_DIR: /data/pilosax PILOSA_ETCD_ADVERTISE_CLIENT_ADDRESS: http://pilosax:10201 PILOSA_ETCD_ADVERTISE_PEER_ADDRESS: http://pilosax:10301 PILOSA_ETCD_INITIAL_CLUSTER: pilosax=http://pilosax:10301 PILOSA_ETCD_LISTEN_CLIENT_ADDRESS: http://0.0.0.0:10201 PILOSA_ETCD_LISTEN_PEER_ADDRESS: http://0.0.0.0:10301 PILOSA_NAME: pilosax PILOSA_STORAGE_BACKEND: ${PILOSA_STORAGE_BACKEND:-rbf} volumes: - data:/data client1: image: tgruben/bash build: context: . dockerfile: Dockerfile.runner environment: - GO111MODULE=on volumes: - /var/run/docker.sock:/var/run/docker.sock depends_on: - pilosa0 volumes: data: