Files
Warp/Docker/docker-compose.sqlite.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

68 lines
2.1 KiB
YAML

# Warp on SQLite: the homeserver, the admin panel and the web client, each
# in its own container, pulled from a registry.
#
# cd Docker
# cp .env.example .env # then edit it
# docker compose -f docker-compose.sqlite.prod.yml up -d
#
# Homeserver http://localhost:8008, admin panel http://localhost:8009, web
# client http://localhost:8080. The database, signing key and media live
# in the warp-data volume.
#
# Create the first administrator once the server is up:
#
# docker compose -f docker-compose.sqlite.prod.yml exec warp warp create-account --username admin --admin
#
# Nothing is built here: the images come 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.sqlite.prod.yml pull && docker compose -f docker-compose.sqlite.prod.yml up -d
name: warp-sqlite
services:
warp:
image: ${WARP_REGISTRY:-ghcr.io/dariuszjaniak}/warp:${WARP_VERSION:-latest}
pull_policy: always
restart: unless-stopped
# The signing key is created on first start and kept in the volume:
# losing it means other servers no longer recognise this one.
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_DB_DRIVER: sqlite
volumes:
- warp-data:/data
ports:
- "${WARP_PORT:-8008}:8008"
admin:
image: ${WARP_REGISTRY:-ghcr.io/dariuszjaniak}/warp-admin:${WARP_VERSION:-latest}
pull_policy: always
restart: unless-stopped
depends_on:
- warp
env_file: .env
environment:
WARP_ADMIN_HOMESERVER: http://warp:8008
ports:
- "${WARP_ADMIN_PORT:-8009}:8009"
web:
image: ${WARP_REGISTRY:-ghcr.io/dariuszjaniak}/warp-web:${WARP_VERSION:-latest}
pull_policy: always
restart: unless-stopped
depends_on:
- warp
env_file: .env
environment:
WARP_WEB_HOMESERVER: http://warp:8008
ports:
- "${WARP_WEB_PORT:-8080}:8080"
volumes:
warp-data: