Skip to main content

Upgrade and rollback

An upgrade pulls the new image and restarts the container; the database migrations run by themselves at the start.

Terminal window
docker compose pull && docker compose up -d
  • Back up first (database and data volume together, Keys and backups).
  • Migrations run automatically at start and only forward. The node refuses to start against a database that is newer than the binary, so a downgrade means restoring the backup taken before the upgrade (database and data volume), then starting the older image.
  • Pin a release line with IMAGE_TAG in .env (for example 0.1) to get fixes without surprises; the default latest follows every release. Images are tagged X.Y.Z, X.Y and latest. Read the release notes before moving to a new minor version; versions before 1.0 may still change configuration or behavior between minor versions, and the release notes say what an operator has to do.
  • After the upgrade: check the log for configuration errors, /readyz, and check-config.
  • Several instances behind a load balancer: update one instance at a time (SIGTERM: it leaves the bus, hands over the leadership and LiveKit stops), start the new version; migrations run under the startup lease. See Scaling with Valkey.
  • Watch the releases of the repository for security fixes.

Rollback in short:

Terminal window
docker compose down
# restore the database dump and ./data (with keys/) from the backup taken before the upgrade
# set IMAGE_TAG in .env to the previous version
docker compose up -d

This page is generated from tavrn-node/docs/HANDBOOK.md (AGPL-3.0-only) when the website is built; its links were adapted for this site.