VeilBrowserDocs

Upgrades & rollback

Upgrade the control plane safely and roll back when you need to.

Upgrades are designed to be minimal and reversible. The control plane keeps previous versions on disk so you can roll back quickly.

Upgrade

Pull the new signed image and recreate the container. State lives in named volumes, so your data is preserved:

terminal
docker compose pull
docker compose up -d

With the Watchtower profile enabled, this happens automatically (forward-only).

Re-run the installer with the new tarball. It detects the existing install and runs in upgrade mode: a new versioned directory, database migrations, service-unit refresh, and a restart. The load-balancer config, system packages and webroot are left untouched.

terminal
sudo bash bootstrap.sh --cluster-manager-tarball /tmp/cluster-manager-vX.tar.gz

The previous versions are kept on disk and pruned by retention.

Check migrations first

Database migrations are forward-only. If you want to know what will change, diff the migrations between the two releases before deploying.

Rollback

Watchtower only rolls forward. To downgrade, pin the previous image tag and recreate:

terminal
VEIL_CLUSTER_MANAGER_TAG=vX.Y.Z docker compose up -d

Repoint the current symlink to the previous versioned directory and restart the service:

terminal
sudo ln -sfn /srv/cluster-manager/v<previous> /srv/cluster-manager/current
sudo systemctl restart veil-cluster-manager

Migrations and rollback

If the newer version applied a migration the old code cannot tolerate, roll the database back to a pre-upgrade backup. Prefer migrations that are safe to back-level.

Next steps

Was this page helpful?

On this page