Backup and restore
Containerised deployment
All Canvus data lives in /canvus-data/ on the host. Backing up this directory is all that is needed for a complete backup.
Filesystem backup (recommended)
# Stop the Canvus container (keeps postgres running briefly, then stop all)
sudo podman-compose stop
# Create backup archive
sudo tar -czf canvus-backup-$(date +%Y%m%d-%H%M).tar.gz /canvus-data/
# Restart
sudo podman-compose up -d
Store the resulting .tar.gz file in a safe location off the server.
Tip
Canvus data can also be backed up while the server is running. If consistency is critical (e.g. large active deployments), stop containers first.
What the backup contains
| Path | Contents |
|---|---|
/canvus-data/config/ |
Server configuration |
/canvus-data/certs/ |
TLS certificates |
/canvus-data/licenses/ |
License files |
/canvus-data/assets/ |
Canvas content (images, videos, etc.) |
/canvus-data/postgres/ |
PostgreSQL database files |
Note
Back up your podman-compose.yml separately — it is not stored in /canvus-data/.
Restore from filesystem backup
# Stop all containers
sudo podman-compose down
# Extract backup (overwrites existing /canvus-data/)
sudo tar -xzf canvus-backup-20240101-1200.tar.gz -C /
# Start
sudo podman-compose up -d
You can restore to the same or a newer version of Canvus server.
Database-only backup
For database-only snapshots without stopping the server:
sudo podman exec canvus-postgres pg_dump -U canvus canvus > canvus-db-$(date +%Y%m%d).sql
Restore:
# Stop Canvus (keep postgres running)
sudo podman stop canvus-combined
# Restore database
sudo podman exec -i canvus-postgres psql -U canvus canvus < canvus-db-20240101.sql
# Start Canvus
sudo podman start canvus-combined
Legacy bare-metal installation
Bare-metal installations use the mt-canvus-server binary for backup and restore.
Backup
# Ubuntu
sudo -H -u mt-canvus-server /opt/mt-canvus-server/bin/mt-canvus-server --backup
# Windows (as Administrator)
"C:\Program Files\MT Canvus Server\bin\mt-canvus-server" --backup
The backup is written to the path configured in mt-canvus-server.ini:
[backup]
; Default: /var/lib/mt-canvus-server/backups (Ubuntu)
; <ProgramData>\MultiTaction\canvus\backups (Windows)
; root=/var/lib/mt-canvus-server/backups
Use --backup-path <folder> to write to a specific folder instead.
The backup creates:
- db_dump.sql — PostgreSQL database dump
- assets/ — all canvas asset files
- mt-canvus-backup-metadata.json — version and timestamp metadata
Restore
Warning
The server must not be running while restoring a backup.
# Ubuntu
sudo -H -u mt-canvus-server /opt/mt-canvus-server/bin/mt-canvus-server \
--restore --backup-path /var/lib/mt-canvus-server/backups/<backup-name>
# Windows (as Administrator)
"C:\Program Files\MT Canvus Server\bin\mt-canvus-server" --restore ^
--backup-path "C:\ProgramData\MultiTaction\canvus\backups\<backup-name>"
Configuration files
The --backup command does not back up configuration files, TLS keys, certificates, or system files. Back these up separately.