Skip to main content

What changed in v2.6.0

This release replaces the separate api and web containers with a single kaneo container. nginx runs on port 5173 and proxies /api/ requests to the internal Node API. Everything else (the database, volumes, environment variables) works the same. Three areas require changes when upgrading:
  1. Docker Compose: replace the api and web services with kaneo
  2. Environment variables: KANEO_API_URL and DATABASE_URL are now optional
  3. Helm chart: all api.* and web.* values moved under kaneo.* (chart version 0.3.0)

Docker Compose

Before

After

Remove the api and web service blocks and add the kaneo service. The postgres service is unchanged except for the added healthcheck, which kaneo waits for before starting.

Environment variables

KANEO_API_URL is now optional

Previously both KANEO_CLIENT_URL and KANEO_API_URL were required. Now KANEO_API_URL is derived automatically from KANEO_CLIENT_URL:
Remove KANEO_API_URL from your .env unless you need to override it (for example, when a reverse proxy changes the API path). Before:
After:

DATABASE_URL is now optional

For the bundled image, DATABASE_URL is derived from POSTGRES_USER, POSTGRES_PASSWORD, POSTGRES_DB, and the default Compose hostname if you leave it unset:
If you were setting DATABASE_URL explicitly with the same values, you can remove it. Keep it if you use an external database, a non-default hostname, or a host-native API process that should connect through localhost instead of the Compose hostname. Before:
After:

AUTH_SECRET fallback behavior

If AUTH_SECRET is not set, the container generates a random 64-character hex secret at startup and prints a warning to stderr. This means sessions will not survive container restarts. Set a stable secret to avoid losing active sessions on restart:

Helm chart (0.2.0 → 0.3.0)

Chart version 0.3.0 is a breaking change. All api.* and web.* value keys have moved under kaneo.*.

Changed value keys

Example values migration

Before (values.yaml):
After (values.yaml):

Upgrade command

If you store values in a file, update the keys before running the upgrade. Helm will reject unknown keys and the deployment will fail if api.* or web.* keys remain.

Minimum working configuration

After upgrading, a minimal .env for Docker Compose requires three values:
Generate a stable secret with openssl rand -hex 32 and keep it persistent, or active sessions will be invalidated after a container restart. POSTGRES_DB and POSTGRES_USER default to kaneo if not set. KANEO_API_URL and DATABASE_URL are derived automatically.