services: postgres: hostname: postgres image: postgres:15-alpine restart: always volumes: - "${POSTGRES_DATA_PATH:?}:/var/lib/postgresql/data" environment: POSTGRES_PASSWORD: "${POSTGRES_PASSWORD:?}" POSTGRES_USER: dendrite POSTGRES_DATABASE: dendrite healthcheck: test: ["CMD-SHELL", "pg_isready -U dendrite"] interval: 5s timeout: 5s retries: 5 networks: - internal monolith: hostname: monolith image: ghcr.io/element-hq/dendrite-monolith:latest ports: - "${DENDRITE_HTTP_PORT:-8008}:8008" - "${DENDRITE_HTTPS_PORT:-8448}:8448" volumes: - "${DENDRITE_CONFIG_PATH:?}:/etc/dendrite" - "${DENDRITE_MEDIA_PATH:?}:/var/dendrite/media" - "${DENDRITE_JETSTREAM_PATH:?}:/var/dendrite/jetstream" - "${DENDRITE_SEARCH_INDEX_PATH:?}:/var/dendrite/searchindex" depends_on: postgres: condition: service_healthy networks: - internal restart: unless-stopped networks: internal: attachable: true