Skip to main content

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:

  1. Creates a zip archive of the app's entire data folder.
  2. Stores the zip file alongside the app data under /DATA/AppData/.
  3. 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​

  1. Go to Admin Panel → Apps.
  2. Find the app you want to back up.
  3. Click the Backup button next to the app.
  4. Wait for the backup to complete — this may take a while for apps with lots of data (like photo libraries or media servers).
  5. 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
warning

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​

  1. Go to Admin Panel → Apps.
  2. Find the app you want to restore.
  3. Click the Restore button.
  4. Select the backup you want to restore from.
  5. 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:

  1. Go to Admin Panel → Apps.
  2. Check the Backups count.
  3. 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
tip

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.