version: "3" networks: web: external: true services: app: build: context: . dockerfile: Dockerfile.app restart: unless-stopped env_file: - .env environment: - SYNAPSE_SERVER_NAME=${SYNAPSE_SERVER_NAME} labels: traefik.enable: "true" traefik.frontend.rule: "Host: ${CHATONS_SERVICE:-matrix}.${CHATONS_DOMAIN:-localhost}, www.${CHATONS_SERVICE:-matrix}.${CHATONS_DOMAIN:-localhost}" networks: - web - default volumes: - ${CHATONS_ROOT_DIR:-/srv/chatons}/${CHATONS_SERVICE:-matrix}/data:/data ports: - 8448:8448 db: image: postgres:10-alpine restart: unless-stopped env_file: - .env environment: - POSTGRES_USER=synapse - POSTGRES_DB=synapse volumes: - ${CHATONS_ROOT_DIR:-/srv/chatons}/${CHATONS_SERVICE:-matrix}/postgres:/var/lib/postgresql/data riot: build: context: . args: SYNAPSE_FULL_URL: ${CHATONS_SERVICE:-matrix}.${CHATONS_DOMAIN:-localhost} RIOT_VERSION: v1.0.3 PROTOCOL: ${PROTOCOL:-http} restart: unless-stopped labels: traefik.enable: "true" traefik.frontend.rule: "Host: ${RIOT_SUBDOMAIN:-riot}.${CHATONS_DOMAIN:-localhost}, www.${RIOTSUBDOMAIN:-riot}.${CHATONS_DOMAIN:-localhost}" networks: - web