Skip to content

Docker ​

Image name

The published name is kirizuofficial/kirivers. Which tag to pull follows the current Docker Hub and GitHub Release. Official images already embed the admin console; mounting or copying frontend/dist is unnecessary.

TagMeaning
latestpoints at the most recent release
<semver> (e.g. 0.3.0, no v prefix)that version's multi-arch manifest; docker pull picks your architecture
<semver>_amd64 / <semver>_arm64that version's single-architecture images; use them only when you pin an architecture

The image supports linux/amd64 and linux/arm64 (Alpine base, musl builds). Other Linux architectures have no official image — use the glibc Release archives or build from source.

The image is the published unit; the container is the running unit.

PostgreSQL must already exist (another container, a hosted database, or the host). This docker run does not start a database. To bring up the database in one stack, use Compose.

Run ​

Mount a host config directory into the container (it must contain config.yaml, admin.yaml, client.yaml) and publish both planes' ports:

bash
docker run --name kirivers --restart unless-stopped \
  -p 8080:8080 -p 8081:8081 \
  -v /var/kirivers/config:/config \
  -e KIRIVERS_CONFIG=/config \
  -e KIRIVERS_POSTGRES_DSN='host=host.docker.internal user=kirivers password=CHANGE_ME dbname=kirivers port=5432 sslmode=disable' \
  kirizuofficial/kirivers

Expect the container to stay running and docker logs kirivers to show the :8080 / :8081 listeners. Open http://127.0.0.1:8081 on the host.

The official image includes the admin console. static_dir in admin.yaml points at the console's static files; the VitePress docs dist is not the console. static_dir: "" disables the UI.

Container is up but the browser has no login page

Confirm port 8081 is published and static_dir in the container's admin.yaml is not the empty string. The official image already embeds the UI; do not mount a self-built frontend/dist on top of it.

Logs, upgrade, data ​

TaskAction
Logsdocker logs -f kirivers; optionally bind-mount log.file.dir to a volume
Upgrade imagedocker pull kirizuofficial/kirivers then recreate the container; back up PostgreSQL and storage.local.root first
DataDatabase on the PostgreSQL volume; packages on object storage or a storage.local.root volume

Next: Compose or bootstrap the first admin.