Backup & Restore
Keeping regular backups of your apps ensures you can recover from data loss, failed updates, or configuration mistakes. Your PCS provides built-in backup and restore functionality through the admin panel.
How Backups Work
Each app on your PCS stores its data in a folder under /DATA/AppData/<app-name>/. When you create a backup, the admin panel:
- Creates a zip archive of the app's entire data folder.
- Stores the zip file alongside the app data under
/DATA/AppData/. - Timestamps the backup so you can identify when it was created.
Backups capture everything the app needs: databases, configuration files, uploaded media, and settings.
Creating a Backup
From the Admin Panel
- Go to Admin Panel → Apps.
- Find the app you want to back up.
- Click the Backup button next to the app.
- Wait for the backup to complete — this may take a while for apps with lots of data (like photo libraries or media servers).
- Once done, the backup appears in the Backups count at the top.
From the Terminal
For more control, you can create backups manually:
# Stop the app first for a consistent backup
cd /DATA/AppData/<app-name>
docker compose down
# Create a timestamped backup
tar -czf /DATA/AppData/<app-name>-backup-$(date +%Y%m%d).tar.gz .
# Restart the app
docker compose up -d
Always stop the app before creating a manual backup. Backing up while the app is running can result in corrupted databases or incomplete files.
Restoring from a Backup
From the Admin Panel
- Go to Admin Panel → Apps.
- Find the app you want to restore.
- Click the Restore button.
- Select the backup you want to restore from.
- Confirm the restore — this will replace the app's current data with the backup.
From the Terminal
# Stop the app
cd /DATA/AppData/<app-name>
docker compose down
# Remove current data (be careful!)
rm -rf /DATA/AppData/<app-name>/*
# Extract the backup
tar -xzf /DATA/AppData/<app-name>-backup-20260728.tar.gz -C /DATA/AppData/<app-name>/
# Restart the app
docker compose up -d
When to Back Up
Create backups in these situations:
- Before updating an app — if the update goes wrong, you can roll back.
- Before changing app configuration — especially database settings or authentication.
- On a regular schedule — weekly for important apps, monthly for less critical ones.
- Before a PCS migration — even though migration copies all data, having an extra backup is good insurance.
Offsite Backups
Backups stored on the PCS are protected against app failures, but not against disk failure. For additional safety, copy your backups to an external location:
Using SCP
# From another machine, download the backup
scp admin@<your-pcs-ip>:/DATA/AppData/<app-name>-backup.tar.gz ./
Using a Cloud Storage App
Install a cloud sync app (like Nextcloud) on your PCS and configure it to sync your backup directory to a cloud provider.
Using Rsync
# Sync backups to a remote server
rsync -avz /DATA/AppData/*-backup*.tar.gz user@remote-server:/backups/
Managing Backup Storage
Backups consume disk space. Monitor your disk usage from Admin Panel → Resources → Disk tab.
To clean up old backups:
- Go to Admin Panel → Apps.
- Check the Backups count.
- Delete old backups you no longer need.
Or from Terminal:
# List all backups
find /DATA/AppData/ -name "*.tar.gz" -o -name "*backup*.zip" | sort
# Remove backups older than 30 days
find /DATA/AppData/ -name "*backup*" -mtime +30 -delete
A good strategy is to keep the 3 most recent backups for each app. This gives you recovery options without consuming too much disk space.