version: "3" networks: web: external: true services: app: image: matrixdotorg/synapse:v0.33.8 restart: unless-stopped env_file: - .env environment: - SYNAPSE_SERVER_NAME=${CHATONS_SERVICE:-matrix}.${CHATONS_DOMAIN:-localhost} 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_SERVER_NAME: ${CHATONS_SERVICE:-matrix}.${CHATONS_DOMAIN:-localhost} RIOT_VERSION: v0.17.5 labels: traefik.enable: "true" traefik.frontend.rule: "Host: riot.${CHATONS_DOMAIN:-localhost}, www.riot.${CHATONS_DOMAIN:-localhost}" networks: - web