Manual Update & Rollback
If an automatic update fails or you need to revert to a previous version, you can restore from the backup that SeqDesk creates before each update.
Rollback from Backup
Stop the server
Stop the SeqDesk process:
# If running via systemd
sudo systemctl stop seqdesk
# If running directly
# Kill the Node.js processRestore files
The automatic backup is stored in .update-backup/ in the SeqDesk directory.
Restore the backed-up files:
# Restore compiled application
cp -r .update-backup/.next/ .next/
# Restore dependencies
cp -r .update-backup/node_modules/ node_modules/
# Restore database schema
cp -r .update-backup/prisma/ prisma/
# Restore static assets
cp -r .update-backup/public/ public/
# Restore package manifest
cp .update-backup/package.json package.jsonSync the database schema
After restoring the old schema files, re-apply the committed migrations:
npm run db:migrate:deployThis ensures the database schema matches the restored application version.
Restart the server
# If running via systemd
sudo systemctl start seqdesk
# If running directly
npm startDatabase Considerations
- SeqDesk updates do not overwrite your PostgreSQL data directly
- Database migrations are forward-only — rolling back may require restoring a database backup if the update added new tables or columns
- If the database is corrupted, restore from your own backups (not included in
the
.update-backup/directory)
Manual Update
To manually update without the built-in system:
Back up the current installation
mkdir -p manual-backup
cp -r .next node_modules prisma public package.json manual-backup/Download the new version
Download the release package from the update server or your deployment system.
Apply the update
Extract the new files into the SeqDesk directory, overwriting existing files.
Install dependencies
npm install --productionRun database migrations
npm run db:migrate:deployRestart
sudo systemctl restart seqdeskBackup Strategy
The built-in backup only covers application files. For a complete disaster recovery plan:
- Database — regularly back up PostgreSQL using your database snapshot or dump strategy
- Configuration — version-control
seqdesk.config.json - Sequencing data — the data directory is not managed by SeqDesk; use your own backup system
- Pipeline outputs — back up the
pipeline_runs/directory if needed