Updating
Upgrade AirTrail to a new version, and roll back if needed.
AirTrail shows a notice in the app when a new version is available, to the owner and administrators by default. Read the release notes before updating, especially for a new major version.
Take a backup before every update. Database migrations run forward only, so going back to an older version means restoring the backup taken before the update.
Docker Compose
In the directory with docker-compose.yml and .env, run:
docker compose pull
docker compose up -dThe container applies database migrations automatically when it starts. Check docker compose logs airtrail if the app does not come back up.
Pinning a version
The Compose file uses the latest tag, which moves to each new release when you pull. To update only when you choose, pin a specific version in docker-compose.yml:
airtrail:
image: johly/airtrail:v3.12.0To update, change the tag to the new version and run the commands above. A major-version tag such as v3 follows new releases within that major version but never jumps to the next one, which avoids surprise breaking changes. Available tags are listed on Docker Hub.
Rolling back
- Stop AirTrail with
docker compose down. - Set the image tag back to the version you were running before.
- Restore the database backup taken before the update, as described in Backup and restore.
- Start AirTrail with
docker compose up -d.
Portainer
Open the stack, then Editor → Update the stack with Re-pull image and redeploy enabled.
Manual installation
Stop AirTrail, then in the installation directory:
git fetch --tags
git checkout "$(git describe --tags "$(git rev-list --tags --max-count=1)")"
bun install
bun run build
bun run db:migrate-deployStart AirTrail again, for example with sudo systemctl start airtrail.
Always run db:migrate-deploy after building. Starting a new version against
an old database schema causes errors and can lose data.
If you use the optional airport map layer, copy the latest airport-overlay.pmtiles into static/ again before bun run build. See Manual installation.
Last updated on
