Skip to main content

Overview

The backend is a Node.js REST API that handles authentication, business logic, data-connector queries, and LLM orchestration. It runs on port 3000 and is exposed through Gateway API or Ingress, usually on its own API hostname. Set CONNECT_SERVICE_URL to the in-cluster Connect service URL when connect.enabled: true, for example http://cobi-dashboard-connect:8000.

Required Secrets

Create the backend Kubernetes Secret before running helm install. The backend will crash-loop if the Secret is missing or incomplete.
After the first successful deployment, change ENABLE_MIGRATIONS to "false" and re-apply the Secret. Running migrations on every pod restart is not safe in production.

Environment Variable Reference

Database

Both connection strings follow the format:
For the in-cluster PostgreSQL subchart, the host is <release-name>-postgresql (e.g. cobi-dashboard-postgresql).

Authentication

BETTER_AUTH_URL must match the public API URL. FRONTEND_URL must match the public frontend URL.

LLM Inference

When using OpenRouter or another external provider instead of vLLM:

Vector Store (Qdrant)

Object Storage

When backend.s3.existingSecret is set, the Helm chart maps these generic S3_* Secret keys to the backend container’s runtime environment variables.

Security

Observability

Helm Values

Reference the Secret in your values file:

Generating Secure Keys