Upgrades¶
Three things get upgraded, each with its own procedure.
| What | How |
|---|---|
| Tenantry | Re-run scripts/install.sh with --version |
| Teleport | Change the pinned image of your cluster, then align Tenantry |
| Steward consoles | The console's upgrade.sh, driven from Tenantry |
Upgrade Tenantry¶
install.sh is re-runnable. Running it again with the same --name and --dir keeps everything: .env (admin password hash, session secret, secrets encryption key), the /data volume, the certificate, and the Machine ID identity. No bot token is needed again.
- Take a backup.
-
Update the installer and run it with the release you want:
cd tenantry git pull sudo scripts/install.sh --name acme --public-url https://tenantry.acme.ch \ --teleport-local auto --expose cloudflare-tunnel \ --version 1.3.0Repeat the same options you used at install (the guided mode prints them at the end of an install).
--teleport-local autofinds the local Teleport again. -
Check Security (Machine ID renewed) and Client proxies (fleet readable).
Notes:
- The image comes from Docker Hub (
verttigo28/tenantry:<version>, mirrored onghcr.io/verttigo28/tenantry). Pass--versionto change the release: without--version,--imageor--build, a re-run keeps the image already installed (pinned by digest), and a first install refuses to start (latestis never assumed). Withcosigninstalled the signature is verified (--require-signaturemakes it mandatory). --image REFuses a specific image or digest.--buildbuilds from the checkout.- The installer rewrites the compose files in
<dir>. Do not edit them by hand. - Verify the image before you install: Verify the image.
- Changing the Tenantry version never changes your Teleport. The bundled
tctl(18.11.1) works with any 18.x cluster; for another major version use--build --teleport-version X.Y.Z. - Installed with a new Teleport cluster bundle? The same, from the bundle:
sudo tenantry/scripts/install.sh --name <name> --public-url https://<tenantry name> --teleport-local auto --expose proxy --version <x.y.z>.
Do not use --reset-secrets for an upgrade
--reset-secrets regenerates the admin password, the session secret and the secrets encryption key. Console tokens and alert channel secrets stored in /data become unreadable and must be entered again.
Upgrade Teleport¶
- Read the Teleport release notes. Never skip a major version.
- Back up (the bundle has
./backup.sh). - Change the pinned image tag in the cluster's
compose.yml, thendocker compose pull && docker compose up -d. - Keep Tenantry in line.
tctlandtbotshould match the cluster. After a minor or patch upgrade, re-runinstall.sh --teleport-local auto: it detects the new version and uses it for thetbotimage. After a major upgrade, rebuild with--build --teleport-version X.Y.Zso the embeddedtctlmatches. - Agents (client proxies) must not be newer than the cluster. See the version gap on Client proxies.
Upgrade Steward consoles¶
Set a target version and let Tenantry show which consoles are behind and generate the exact commands per host: Upgrading Steward consoles. For a single console, see the operations table in Publish Steward.