KubeNova

Quickstart (docker-compose)

Run the manager and Postgres locally with Docker; the stack reads configuration from .env only.

Prerequisites

1) Configure environment

2) Start the dev stack

docker compose -f docker-compose.dev.yml up -d db manager

3) Health + auth

curl -s http://localhost:8080/api/v1/healthz
curl -s http://localhost:8080/api/v1/readyz

4) Register a cluster (optional, for real E2E)

If you have a kind cluster (see kind E2E setup):

KUBE_B64=$(base64 -w0 kind/config)
CAPSULE_PROXY_ENDPOINT="https://proxy.dev.example.com"
curl -s -X POST http://localhost:8080/api/v1/clusters \
  -H 'Content-Type: application/json' \
  -H 'X-KN-Roles: admin' \
  -d "{\"name\":\"dev-cluster\",\"datacenter\":\"dc1\",\"labels\":{\"env\":\"dev\"},\"kubeconfig\":\"$KUBE_B64\",\"capsuleProxyEndpoint\":\"$CAPSULE_PROXY_ENDPOINT\"}"

The manager uses Helm (bundled in the image) and the local operator chart to install the operator into the cluster.

Optional: expose VelaUX as LoadBalancer

If you enable the VelaUX addon and want a public endpoint in dev/test:

kubectl -n vela-system patch svc velaux-server -p '{"spec": {"type": "LoadBalancer"}}'

5) Next steps