Upgrading
Keep your self-hosted Yavio deployment up to date
Pulling Latest Images
The simplest way to upgrade is via the Yavio CLI:
npx @yavio/cli updateThis pulls the latest Yavio images (dashboard, ingest, docs) and restarts the services. Data volumes are preserved.
To also update third-party images (PostgreSQL, ClickHouse):
npx @yavio/cli update --allManual Upgrade
If you prefer using Docker Compose directly:
docker compose pull
docker compose up -dChecking for Updates
Preview what would be pulled without making changes:
npx @yavio/cli update --dry-runDatabase Migrations
Database migrations run automatically when services start. Both PostgreSQL (via Drizzle) and ClickHouse migrations are applied on boot.
There is no manual migration step required. Just pull the latest images and restart.
Rollback
If an update causes issues, you can roll back to a specific image version by pinning the version in your docker-compose.yml or using a tagged image:
docker compose pull dashboard:v1.2.3
docker compose up -d dashboardBackup Before Upgrading
For production deployments, take a backup before upgrading:
# PostgreSQL
docker compose exec postgres pg_dump -U yavio_service yavio > backup.sql
# ClickHouse
docker compose exec clickhouse clickhouse-client \
--password "$CLICKHOUSE_PASSWORD" \
--query "SELECT * FROM yavio.events FORMAT Native" > events.native