Skip to content

Production deployment

Prerequisites: Linux host or Docker Desktop with Compose v2, three DNS names pointing to the host, ports 80 and 443, and an externally managed OIDC provider.

Terminal window
cp release/.env.prod.example .env.prod
# Replace every change-me/example.com value.
./release/abada-platform doctor prod --env-file .env.prod
./release/abada-platform up prod --env-file .env.prod

The direct canonical command is:

Terminal window
docker compose --env-file .env.prod \
-f compose.yaml -f compose.prod.yaml up -d

Compose configuration fails before startup if the database password, version, domains, ACME email, CORS origins or OIDC values are missing. The preflight also rejects template placeholders, busy ports, an unavailable Docker daemon and unavailable images.

Agent workers and the Insight Engine are opt-in in production: configure an operator-managed worker (or third-party workers) with your LLM endpoint and allow-lists, and enable ABADA_INSIGHT_ENABLED only when you want the scheduled analyzer. Nothing in the production profile calls a model without your configuration.

Verify:

Terminal window
curl -fsS https://api.example.net/api/actuator/health/readiness
./release/abada-platform status prod --env-file .env.prod

Stop without deleting data:

Terminal window
./release/abada-platform down prod --env-file .env.prod