--- version: "2.1" services: test: build: integration-test links: - sync1 - sync2 volumes: - sync1data:/data1 - sync2data:/data2 networks: - syncnet sut1: build: . links: - sync1 - etcd volumes: - sync1config:/config environment: - SYNCTHING_NODE_NAME=sync1 - SYNCTHING_PUBLISH_ADDRESS=tcp4://sync1 - SYNCTHING_DATA_PATH=/data - SYNCTHING_LOCAL_HOSTNAME=sync1 - ETCD_HOSTNAME=etcd - ETCD_KEY=/syncthing_monitor/cluster1/cluster_info networks: - syncnet sync1: image: ghcr.io/linuxserver/syncthing:${SYNCTHING_VERSION} environment: - PUID=${PUID} - PGID=${PGID} - TZ=${TZ} volumes: - sync1config:/config - sync1data:/data networks: - syncnet sut2: build: . links: - sync2 - etcd volumes: - sync2config:/config environment: - SYNCTHING_NODE_NAME=sync2 - SYNCTHING_PUBLISH_ADDRESS=tcp4://sync2 - SYNCTHING_DATA_PATH=/data - SYNCTHING_LOCAL_HOSTNAME=sync2 - ETCD_HOSTNAME=etcd - ETCD_KEY=/syncthing_monitor/cluster1/cluster_info networks: - syncnet sync2: image: ghcr.io/linuxserver/syncthing:${SYNCTHING_VERSION} environment: - PUID=${PUID} - PGID=${PGID} - TZ=${TZ} volumes: - sync2config:/config - sync2data:/data networks: - syncnet etcd: image: quay.io/coreos/etcd command: /usr/local/bin/etcd --data-dir=/etcd-data --advertise-client-urls http://etcd:2379 --listen-client-urls=http://0.0.0.0:2379 volumes: - etcd-data:/etcd-data networks: - syncnet volumes: sync1data: sync1config: sync2data: sync2config: etcd-data: networks: syncnet: