Requirements
- Helm 3.8+
- Kubernetes 1.28+ or OpenShift 4.14+
- For
mode: operatordata stores, the matching operator installed on the cluster
Quick start (bundled data stores)
The defaultbundled mode runs PostgreSQL (pgvector), MongoDB, and RabbitMQ as
StatefulSets the chart manages — the equivalent of Docker Compose USE_LOCAL_DB=true.
One command, no operators:
imageTag pins the Kodus release for the whole stack (like Docker Compose
IMAGE_TAG); use a real tag, never latest, in production. Auth/crypto secrets
are generated automatically with the correct format and stay stable across
upgrades.
Data store modes
Each store (postgres, mongodb, rabbitmq) has an independent mode:
For production, prefer
external or operator — they hand database operation to
something purpose-built.
OpenShift
Add the OpenShift overlay — Routes replace Ingress, and pod UIDs are left to the namespace SCC (restricted-v2), so no UIDs are hardcoded:
route.hosts.*.host empty to let OpenShift auto-assign the
<name>-<namespace>.apps… hostname. Note that some clusters mirror or block
Docker Hub library/* images, so the bundled mongo image may need an override
(--set mongodb.bundled.image=mirror.gcr.io/library/mongo:8) or an external /
operator data store.
Optional services & verification
- MCP manager —
--set services.mcp-manager.enabled=true - Analytics worker —
--set services.worker-analytics.enabled=true - Health check —
../../scripts/doctor-k8s.sh -n kodusinspects workloads, config, and the real health endpoints.
Full Helm reference
Data-store operator setup, reusing existing databases, air-gapped installs,
secrets via ExternalSecrets, observability, and security defaults.