Deployment Modes¶
Joch supports four deployment modes. The same resource specs work across all of them — only the runtime adapter changes.
Local¶
For developers. Single process, SQLite store, local files, no Kubernetes.
brew install joch
joch up
joch apply -f examples/support-triage.yaml
joch run support-triage "Triage incoming queue"
Best for fast iteration, prototyping, and example agents.
Docker Compose¶
For small teams and self-hosted deployments. Postgres store, Redis event bus, MinIO artifacts, OpenTelemetry collector.
Best for team dev environments, CI smoke tests, and demos.
Kubernetes¶
For production. Native CRDs, Helm chart, controllers, NetworkPolicies, ServiceMonitor, autoscaling.
Best for multi-tenant, scale-out, governed production fleets.
Managed SaaS + customer runtime¶
For organizations that want Joch's UI, traces, and AgBOM hosted, but tools, memory, and provider calls inside the customer environment.
joch Cloud control plane (multi-tenant)
│ secure tunnel / API
▼
customer runtime plane (Kubernetes / Docker / VM)
Best for regulated industries, EU residency, and teams that do not want to operate the control plane.
Familiar pattern¶
The model mirrors the pattern engineering teams already understand:
For Joch:
The same joch apply -f . and the same resource specs work in each mode.