Files
Swarm/compose.yaml

96 lines
2.4 KiB
YAML

services:
etcd:
image: bitnami/etcd:latest
ports:
- "2379:2379"
- "2380:2380"
environment:
- ETCD_ADVERTISE_CLIENT_URLS=http://etcd:2379
- ETCD_LISTEN_CLIENT_URLS=http://0.0.0.0:2379
- ETCD_LISTEN_PEER_URLS=http://0.0.0.0:2380
- ETCD_INITIAL_ADVERTISE_PEER_URLS=http://etcd:2380
- ETCD_INITIAL_CLUSTER_TOKEN=etcd-cluster
- ETCD_INITIAL_CLUSTER_STATE=new
- ETCD_INITIAL_CLUSTER=etcd=http://etcd:2380
healthcheck:
test: ["CMD", "etcdctl", "get", "/health"]
interval: 5s
timeout: 5s
retries: 5
gateway:
build:
context: .
dockerfile: DysonNetwork.Gateway/Dockerfile
ports:
- "8000:8080"
environment:
- ConnectionStrings__Etcd=http://etcd:2379
- Etcd__Insecure=true
- Service__Name=DysonNetwork.Gateway
- Service__Url=http://gateway:8080
depends_on:
etcd:
condition: service_healthy
drive:
build:
context: .
dockerfile: DysonNetwork.Drive/Dockerfile
ports:
- "8001:8080"
environment:
- ConnectionStrings__Etcd=http://etcd:2379
- Etcd__Insecure=true
- Service__Name=DysonNetwork.Drive
- Service__Url=http://drive:8080
depends_on:
etcd:
condition: service_healthy
pass:
build:
context: .
dockerfile: DysonNetwork.Pass/Dockerfile
ports:
- "8002:8080"
environment:
- ConnectionStrings__Etcd=http://etcd:2379
- Etcd__Insecure=true
- Service__Name=DysonNetwork.Pass
- Service__Url=http://pass:8080
depends_on:
etcd:
condition: service_healthy
pusher:
build:
context: .
dockerfile: DysonNetwork.Pusher/Dockerfile
ports:
- "8003:8080"
environment:
- ConnectionStrings__Etcd=http://etcd:2379
- Etcd__Insecure=true
- Service__Name=DysonNetwork.Pusher
- Service__Url=http://pusher:8080
depends_on:
etcd:
condition: service_healthy
sphere:
build:
context: .
dockerfile: DysonNetwork.Sphere/Dockerfile
ports:
- "8004:8080"
environment:
- ConnectionStrings__Etcd=http://etcd:2379
- Etcd__Insecure=true
- Service__Name=DysonNetwork.Sphere
- Service__Url=http://sphere:8080
volumes:
- "./keys:/app/keys"
depends_on:
etcd:
condition: service_healthy