Kubernetes (Helm) Deployment
For a long-running Luna DevOps installation on Kubernetes or K3s, use Helm. The chart deploys API, Worker, PostgreSQL, and Redis together, and it can also connect to existing external database services.
Before You Start
You need:
- A Kubernetes or K3s cluster.
kubectlandhelmconfigured locally.- Network access from the cluster to pull DockerHub images.
- A default StorageClass for PostgreSQL and Redis data.
Install
Run this from the repository root:
This starts:
Open The Console
Forward the API Service:
Then visit:
Use A Fixed Version
Access the Console Through a Public Domain
When exposing the console with Ingress, set app.publicBaseUrl to the real browser-facing URL:
app.publicBaseUrl affects OIDC callbacks, webhook callbacks, and browser origin checks. Do not set it to an internal Service address.
Use External PostgreSQL Or Redis
The built-in services are convenient for getting started. If production already has managed PostgreSQL or Redis, disable the matching built-in component:
The chart generates the built-in Redis password on first install and stores redis-password separately from the redis-url consumed by API and Worker; upgrades reuse the existing Secret. A redis.auth.existingSecret for the built-in service must contain both keys. For external Redis, set externalRedis.url directly or use an externalRedis.existingSecret containing only redis-url. External URIs use redis://username:password@host:port/database; use rediss:// for TLS.
Then install:
Common Values
Uninstall
PVCs are retained by default to prevent accidental data loss. Remove them manually only after confirming the data is no longer needed: