Docker: read every setting from a .env file

Each folder gets a .env.example listing every homeserver, admin panel
and web client setting with its default (empty means the default).
Compose reads .env for ports, registry and the PostgreSQL password, and
passes it to the containers through env_file; the compose files keep
only the database driver, connection string and internal addresses.
.env is git-ignored.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
tajniak81andClaude Opus 5.5 committed 2026-10-22 20:12:35 +02:00
1 parent 6236f5d9a8
commit b8d692bac5
17 files changed
+433 -114

No files matched your search

+5 -6
View File
@@ -2,8 +2,8 @@
# PostgreSQL, each in its own container, pulled from a registry.
#
# cd Docker
# WARP_SERVER_NAME=matrix.example.org WARP_POSTGRES_PASSWORD=change-me \
# docker compose -f docker-compose.postgresql.prod.yml up -d
# cp .env.example .env # then edit it; set WARP_POSTGRES_PASSWORD
# docker compose -f docker-compose.postgresql.prod.yml up -d
#
# Homeserver http://localhost:8008, admin panel http://localhost:8009, web
# client http://localhost:8080. PostgreSQL is reachable only on the compose
@@ -51,13 +51,10 @@ services:
entrypoint: ["/bin/sh", "-c"]
command:
- test -f /data/signing.key || warp generate-keys --output /data/signing.key; exec warp serve
env_file: .env
environment:
WARP_SERVER_NAME: ${WARP_SERVER_NAME:-localhost}
WARP_WELL_KNOWN_CLIENT_BASE_URL: ${WARP_PUBLIC_BASEURL:-http://localhost:8008}
WARP_DB_DRIVER: postgres
WARP_DB_CONNECTION_STRING: postgres://warp:${WARP_POSTGRES_PASSWORD:?set WARP_POSTGRES_PASSWORD}@postgres:5432/warp?sslmode=disable
WARP_REGISTRATION_ENABLED: ${WARP_REGISTRATION_ENABLED:-false}
WARP_FEDERATION_ENABLED: ${WARP_FEDERATION_ENABLED:-false}
volumes:
- warp-data:/data
ports:
@@ -69,6 +66,7 @@ services:
restart: unless-stopped
depends_on:
- warp
env_file: .env
environment:
WARP_ADMIN_HOMESERVER: http://warp:8008
ports:
@@ -80,6 +78,7 @@ services:
restart: unless-stopped
depends_on:
- warp
env_file: .env
environment:
WARP_WEB_HOMESERVER: http://warp:8008
ports: