Skip to content

Kizuna runs from the Kizuna source repository (deep-thinking-lab/kizuna, private: access is by invitation). There is no hosted cloud, no published Helm chart, and no download host for compose files.

Production is compose.prod.yml at the root of that repository. The image is ghcr.io/deep-thinking-lab/kizuna. Caddy in that file terminates TLS. Follow docs/self-host-quickstart.md (generate .env with umask 077, docker compose up, create the admin, keep registration closed, mint a personal access token, push over HTTPS, then ops/backup.sh).

Kubernetes manifests in this repository are not the production install.

From source ​

The toolchain is pinned in the repository (mise.toml). The Elixir app is the kizuna umbrella. Do not treat a source checkout as a production deploy. Production is the container image.

Metrics ​

In production, GET /metrics is 404 until KIZUNA_METRICS_BEARER_TOKEN is set. Send it as a bearer token.

Backups ​

Use ops/backup.sh and ops/restore-drill.sh. A pg_dump of Postgres alone does not include the git data volume.