Files
Warp/Docker-AIO/docker-compose.postgresql.prod.yml
T
tajniak81andClaude Opus 5.5 b8d692bac5 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>
2026-10-22 20:12:35 +02:00

47 lines
1.6 KiB
YAML

# Warp all-in-one on PostgreSQL: the homeserver, the admin panel, the web
# client and PostgreSQL in one container, pulled from a registry.
#
# cd Docker-AIO
# cp .env.example .env # then edit it
# docker compose -f docker-compose.postgresql.prod.yml up -d
#
# PostgreSQL runs inside the container, listening only on a Unix socket
# there, with its data in /data/postgres in the warp-data volume.
#
# Homeserver http://localhost:8008, admin panel http://localhost:8009, web
# client http://localhost:8080.
#
# Create the first administrator once the server is up:
#
# docker compose -f docker-compose.postgresql.prod.yml exec warp warp create-account --username admin --admin
#
# Nothing is built here: the image comes from WARP_REGISTRY (default
# ghcr.io/dariuszjaniak) at tag WARP_VERSION (default latest). Pin
# WARP_VERSION to a release in production, and update with
#
# docker compose -f docker-compose.postgresql.prod.yml pull && docker compose -f docker-compose.postgresql.prod.yml up -d
name: warp-aio-postgresql
services:
warp:
image: ${WARP_REGISTRY:-ghcr.io/dariuszjaniak}/warp-aio:${WARP_VERSION:-latest}
pull_policy: always
restart: unless-stopped
# PostgreSQL's fast shutdown runs after the homeserver's; give both time.
stop_grace_period: 30s
env_file: .env
environment:
WARP_AIO_EMBEDDED_POSTGRES: "true"
WARP_DB_DRIVER: postgres
WARP_DB_CONNECTION_STRING: postgres:///warp?host=/run/postgresql&user=warp&sslmode=disable
volumes:
- warp-data:/data
ports:
- "${WARP_PORT:-8008}:8008"
- "${WARP_ADMIN_PORT:-8009}:8009"
- "${WARP_WEB_PORT:-8080}:8080"
volumes:
warp-data: