version: '3' services: synapse: image: matrixdotorg/synapse:latest restart: unless-stopped environment: - SYNAPSE_CONFIG_PATH=/data/homeserver.yaml - SERVERNAME=${homeServerFQDN} - PUBLICBASEURL=${synapseFQDN} - ELEMENTWEB=${elementWebFQDN} ports: - "8008:8008/tcp" volumes: - ./synapse:/data entrypoint: sh -c "/data/homeserver.yaml.sh && chmod -R 775 /data && /start.py" depends_on: - postgres element: image: vectorim/element-web:latest restart: unless-stopped environment: - SERVERNAME=${homeServerFQDN} - PUBLICBASEURL=${synapseFQDN} - ELEMENTWEB=${elementWebFQDN} volumes: - ./element/config.json.sh:/app/config.json.sh command: sh -c "/app/config.json.sh && nginx -g 'daemon off;'" #entrypoint: /app/config.json.sh ports: - "80:80/tcp" postgres: image: postgres:14 restart: unless-stopped ports: - "5432:5432/tcp" volumes: - ./postgresdata:/var/lib/postgresql/data environment: - POSTGRES_DB=synapse - POSTGRES_USER=synapse - POSTGRES_PASSWORD=NEEDTOSETPASSWORD - POSTGRES_INITDB_ARGS=--encoding=UTF-8 --lc-collate=C --lc-ctype=C