Skip to content

Choose a Deployment Profile

Choose a profile from requirements you can verify. Caracal ships deployment mechanics; it does not certify capacity, high availability, multi-region operation, or a cloud service.

RequirementUseDo not infer
Local development from sourcecaracal up with development ComposeProduction hardening
One Docker host with bundled storesInstalled runtime and packaged ComposeHost redundancy or zero downtime
Kubernetes 1.30+ with operator dependenciesHelm chartA tested SLO or managed stores
Declarative chart installationcaracalStack OpenTofu moduleResources beyond namespace, optional Secret, and Helm release
Provider-neutral VM bootstrapcaracalHost OpenTofu moduleVM, firewall, TLS, backup, or monitoring creation

Define ingress, recovery objectives, storage ownership, secret delivery, monitoring, and maintenance policy. If availability matters, prove it in your environment; replicas, PDBs, HPAs, and atomic upgrades are mechanisms, not guarantees.

  1. Use dev only on a local development host.
  2. Pin a release and use stable for production evaluation.
  3. Keep Compose ports loopback-bound; add an operator-owned TLS proxy for remote access.
  4. For Helm, provide Postgres, Redis, runtime Secret, ingress, and network egress explicitly.
  5. Establish backup, restore, metrics, alerts, and incident ownership before production traffic.

Confirm assets render, secrets resolve, migrations finish, and /ready passes. Run a canary token exchange and Gateway request, then locate its audit evidence.

Keep the prior release and values. Restore data only from a tested backup and restore secrets separately. Helm rollback never reverses database migrations.

Use Deploy with Docker Compose or Deploy with Helm.