Conduit
Conduit
Docsllms.txtHostingGitHubIntroduction

Getting Started

OverviewInstall ConduitMCP SetupYour First AppStart with AI

Learn

ArchitectureClient vs Admin APIConfiguration

Modules

OverviewAuthenticationAuthorizationDatabaseStorageCommunicationsChatRouterFunctions

Guides

Next.js IntegrationReBAC Team ScopingGitOps State Export

Deployment

Deployment OverviewDocker ComposeKubernetes and HelmLocal from SourceContainer Images

Reference

CLI ReferenceClient APIAdmin APIEnvironment VariablesMCP Tools

Resources

Migration v0.16 → v0.17Legacy DocumentationChangelogFAQGlossaryContributing

Kubernetes and Helm

Deploy Conduit with the official Helm chart — probes, readiness, and production layout.

Conduit is Kubernetes-first. Official chart: conduit-platform/conduit (conduit-helm-charts).

helm repo add conduit-platform https://conduitplatform.github.io/helm-charts/
helm install -f values.yaml conduit conduit-platform/conduit

Starter values live in the Conduit repo under deploy/k8s/values/.

Configure ingress for:

  • Admin UI and Admin API (:3030)
  • Router (Client API, :3000)

For local clusters see the Conduit repo deploy/k8s/minikube.md. Chart defaults target dev/demo — use external DB, Redis, and observability stacks for production.

Health probes (core pod)

The chart distinguishes readiness from liveness on the core container:

ProbeMechanismTargetWhy
ReadinessHTTP GET:3030/readyDeep check — core bootstrap, Redis, required modules (READY_REQUIRED_MODULES)
StartupHTTP GET:3030/readyGates slow module registration before liveness failures (up to ~150s by default)
LivenessgRPC health:5000Shallow — process and gRPC server alive; avoids restarts during module warm-up

Readiness uses a 3s timeout because /ready may probe Redis and module health. Liveness stays on gRPC so a temporarily unready platform (e.g. database pod still starting) does not kill core.

Default READY_REQUIRED_MODULES on core:

  • database when router is disabled
  • database,router when the router subchart is enabled

Override probes and env in values.yaml:

core:
  adminHttpPort: 3030
  readinessProbe:
    httpGet:
      path: /ready
      port: 3030
    timeoutSeconds: 3
  livenessProbe:
    grpc:
      port: 5000
  startupProbe:
    enabled: true
    httpGet:
      path: /ready
      port: 3030
  env:
    - name: READY_REQUIRED_MODULES
      value: "database,router,authentication"

Feature modules (database, router, authentication, etc.) use gRPC health for both readiness and liveness on their own pods — only core uses the deep HTTP /ready endpoint.

Shallow liveness endpoint

GET /live on Admin HTTP (:3030) returns immediately with { status: "alive" }. Use it for manual smoke tests; prefer the chart's gRPC liveness probe for Kubernetes.

See also conduit-helm-charts for advanced layouts and multi-tenant experiments.

Docker Compose

Run Conduit microservices or standalone with Docker Compose.

Local from Source

Develop Conduit core and modules with pnpm and Turbo.

On this page

Health probes (core pod)Shallow liveness endpoint