Choose your deployment
The local demo is a throwaway evaluation with seeded synthetic data and a fixed
sign-in code. It is insecure by design: anyone who can reach the app can sign
in. Do not convert a demo install to production. For production, start with a
fresh environment and database; the empty database redirects the first visit to
/setup.
Production topology
Web/API, the migration job, PostgreSQL, and Valkey or a compatible Redis endpoint are always required. The worker and Temporal are required only for scheduled checks; manual checks work without them.
The canonical Compose family is:
compose.yamlis the core production topology: web/API, migrations, PostgreSQL, and Valkey or a compatible Redis endpoint. Manual checks only.compose.worker.yamladds the worker and uses an external Temporal endpoint from your environment.compose.temporal.yamladds the bundled Temporal Server and is combined with the worker overlay.- Web and worker remain on the same immutable release.