Upgrade the Compose bundle
1
Pin the new tag
Set
TAI_VERSION in .env to the release you are moving to.TAI_VERSION in .env
2
Pull it
3
Apply the schema
db-init runs tai db apply. The DDL is additive and IF NOT EXISTS
throughout, so re-running it is safe and a no-op when the schema is already
current.4
Recreate the app services only
--no-deps recreates the three app services against the new image without
restarting Postgres or Redis, so the datastores — and their volumes — stay
up.Read the release notes before pinning. The additive-DDL, schema-compatible
guarantee holds within a release line; a release that says otherwise takes the
steps it names.
Runtime-installed plugins
An image upgrade replaces the core only. Plugins added at runtime through the marketplace live in the server’s plugin prefix (TAI_PLUGINS_PREFIX), not in the image, so they do not update with a new image
tag — a freshly pinned image boots with the same plugin versions the prefix
already holds.
Update them as a step of their own, after the image upgrade:
docker compose up -d /
kubectl rollout restart).
On Kubernetes
helm upgrade re-runs the tai db apply hook and rolls the Deployments; the
data lives in your Postgres and Redis, not the pods. See Helm.
See also
- Verify artifacts — confirm the new tag before you run it.
- Back up and restore — capture state before an upgrade.

