Part of #980.
Add Docker Compose service profiles so operators activate optional components with --profile <name> instead of manually uncommenting blocks.
Profiles:
postgres — pgvector/pg16 shared database (multi-instance)
pgbouncer — PgBouncer pooler (implies postgres)
redis — Redis rate limiter
ollama — local Ollama AI backend
litestream — continuous SQLite backup to S3/B2/R2
caddy — Caddy HTTPS terminator with auto-TLS
observability — Prometheus + Grafana dashboards
tailscale — Tailscale sidecar for tailnet access
runners — self-hosted GitHub Actions runner
Example: docker compose --profile postgres --profile caddy up -d
Part of #980.
Add Docker Compose service profiles so operators activate optional components with
--profile <name>instead of manually uncommenting blocks.Profiles:
postgres— pgvector/pg16 shared database (multi-instance)pgbouncer— PgBouncer pooler (implies postgres)redis— Redis rate limiterollama— local Ollama AI backendlitestream— continuous SQLite backup to S3/B2/R2caddy— Caddy HTTPS terminator with auto-TLSobservability— Prometheus + Grafana dashboardstailscale— Tailscale sidecar for tailnet accessrunners— self-hosted GitHub Actions runnerExample:
docker compose --profile postgres --profile caddy up -d