Skip to main content
Control Plane Server is a self-hosted service. This page covers production deployment options, configuration, and scaling. The quickstart Docker Compose file is suitable for teams up to ~20 active users. For production use, add persistent volumes and point to an external Postgres database.

Production compose file

Start:

Running database migrations

After first start or on upgrade:

Kubernetes

For larger deployments or teams that already run Kubernetes, use the Helm chart:

Custom values

Create values.yaml:
Apply:

Environment variables

Upgrading

Always run migrations after upgrading. Migrations are backward-compatible; the server handles rolling upgrades without downtime.

Backups

Back up the Postgres database on a regular schedule:
Control Plane does not store credentials, API keys, or OAuth tokens; it stores only traces, datasets, and eval results.

Connecting your SDK to a self-hosted server

Point the SDK at your server URL:
Or via environment variables:
When environment variables are set, langship.init() with no arguments picks them up automatically.