Upgrading

Pull, restart. Migrations are idempotent and run at startup.

Database migrations run automatically when the backend starts and are idempotent, so an upgrade is safe to repeat and safe to interrupt.

upgrade
docker compose exec postgres pg_dump -U talos talos > talos-$(date +%F).sql
docker compose pull
docker compose up -d

Take the dump first anyway. In production, pin TALOS_VERSION rather than tracking latest — otherwise you upgrade whenever you happen to pull.