Skip to content

SlideStage Pro · backup-and-restore

Back Up and Restore SlideStage Pro

Mirrored docs keep the language used by their source repo. Site chrome stays in your selected language.

SlideStage Pro data includes both database records and .stage blobs. Back up the whole data volume.

What to back up

The default Docker Compose deployment stores data in the slidestage-data volume:

  • SQLite database.
  • WAL/SHM files.
  • Uploaded .stage files under decks/.

1. Check health

docker compose ps
curl http://localhost/api/health

2. Checkpoint SQLite WAL

docker compose exec api sh -c \
  'cd /data && sqlite3 slidestage-pro.sqlite "PRAGMA wal_checkpoint(FULL);"'

If sqlite3 is unavailable, make sure the backup includes -wal and -shm files.

3. Archive the volume

docker run --rm \
  -v slidestage-pro_slidestage-data:/data:ro \
  -v "$(pwd)":/backup \
  alpine tar czf /backup/slidestage-backup-$(date +%F).tar.gz -C / data

Copy the archive to safe storage.

4. Restore

Stop the stack:

docker compose down

Clear and restore the volume:

docker run --rm \
  -v slidestage-pro_slidestage-data:/data \
  alpine sh -c 'rm -rf /data/*'

docker run --rm \
  -v slidestage-pro_slidestage-data:/data \
  -v "$(pwd)":/backup \
  alpine tar xzf /backup/slidestage-backup-YYYY-MM-DD.tar.gz -C /

Start again:

docker compose up -d
curl http://localhost/api/health

Verify

Log in and check users, deck list, playback, notes, annotations, and invites.

Do a restore drill regularly. A backup is only useful if it can be restored.