Updating OmniLux
Use this page as the operational checklist before and after upgrades.
Before updating
Back up your database before any update:
# Docker
docker cp omnilux:/app/data/omnilux.db ./omnilux.db.bak
# Bare metal
cp /var/lib/omnilux/omnilux.db /var/lib/omnilux/omnilux.db.bakDocker
For image-based installs, the normal flow is pull, restart, then verify health:
docker compose pull
docker compose up -dIf you build from source:
git pull
docker compose up --build -dBare metal
For source-based installs, pull, rebuild, restart, then verify the service:
cd /opt/omnilux
git pull
pnpm install
pnpm build
sudo systemctl restart omniluxDatabase migrations
Migrations run automatically when OmniLux starts. There's no manual migration step. The migration system is sequential (001 through 090+) and each migration is applied exactly once.
If a migration fails, OmniLux will log the error and refuse to start. In that case:
- Check the logs for the specific migration error
- Restore your database backup
- Report the issue on GitHub
Downgrading
Downgrading is not officially supported because database migrations are forward-only. If you need to roll back:
- Stop OmniLux
- Restore your database backup
- Check out the previous version:
git checkout v0.x.x - Rebuild and restart
Checking the current version
The version is displayed in the web UI footer and available via the health endpoint:
curl http://localhost:4000/api/healthAfter updating
Confirm these before you call the upgrade done:
- The web UI loads.
api/healthresponds successfully.- Background scans and playback still work.
- Any reverse proxy or remote path still reaches the server.