Database

Kubuno uses PostgreSQL 16, with a dedicated schema per module (strict isolation). Postgres also serves as the event bus and the job queue — no Redis, no external broker.

PostgreSQL with one schema per module (core, calendar, drive, mail)
One schema per module, plus the event bus and the job queue — all in a single database.

Connection #

# Par URL
KV__DATABASE__URL=postgres://kubuno:motdepasse@localhost:5432/kubuno

# Ou par champs
KV__DATABASE__HOST=localhost
KV__DATABASE__USER=kubuno
KV__DATABASE__PASSWORD=…
KV__DATABASE__DATABASE=kubuno
Note

The supervisor injects credentials into the modules via KUBUNO_DB_HOST / _PORT / _USER / _PASSWORD / _NAME. Special characters in a password must be URL-encoded when used in a URL.

Migrations #

Each module creates its schema and applies its migrations at startup. To rebuild the SQLx query cache after a schema change:

DATABASE_URL=postgres://… cargo sqlx prepare   # then commit .sqlx