services: postgres: image: docker.io/postgres:18.4-alpine user: ${UID}:${GID} restart: unless-stopped environment: POSTGRES_USER: synapse POSTGRES_PASSWORD: synapse-password POSTGRES_DB: homeserver POSTGRES_INITDB_ARGS: --lc-collate C --lc-ctype C --encoding UTF8 PGDATA: /data volumes: - ./postgres:/data - /etc/passwd:/etc/passwd:ro synapse: image: ghcr.io/element-hq/synapse:v1.153.0 user: "${UID}:${GID}" restart: unless-stopped entrypoint: python command: "-m synapse.app.homeserver -c /config/homeserver.yaml" ports: - "${SERVICE_SYNAPSE_BIND_PORT_CLIENT_API}:8008" - "${SERVICE_SYNAPSE_BIND_PORT_FEDERATION_API}:8008" volumes: - ../../etc/services/synapse/config:/config:ro - ./synapse/media-store:/media-store networks: default: name: ${NETWORK_NAME} external: true