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>
47 lines
1.6 KiB
YAML
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:
|