Backups & Restore
Automated Backups & Restore
BlitzPress uses BorgBackup for space-efficient, incremental backups with deduplication.
How Backups Work
- Database dump — MariaDB database is exported to the site directory
- BorgBackup archive — all site files (WordPress, uploads, configs) are compressed with zstd and stored incrementally
- Deduplication — only changed blocks are stored, saving significant disk space
- Encryption — each site’s backup repo uses repokey-blake2 encryption with a per-site passphrase
Retention Policy
| Type | Kept |
|---|---|
| Daily | 30 backups |
| Weekly | 4 backups |
| Monthly | 6 backups |
Old backups are pruned automatically, and freed space is compacted.
Backup Storage
- Local:
/opt/blitzpress/backups/borg/{domain}/ - Remote (optional): Google Drive, Amazon S3, Backblaze B2 via rclone
Creating a Backup
From the panel, go to your site and click “Backup”. The backup runs in the background and you’ll see the status update in real-time.
Restoring from Backup
- Go to your site’s backup section in the panel
- Browse available snapshots (listed by date)
- Click “Restore” on the snapshot you want
- BlitzPress extracts the archive and imports the database
- Your site is rolled back to that exact point in time
Remote Backups
Configure remote backup destinations from the panel:
- Google Drive — authenticate via OAuth, select backup folder
- Amazon S3 — provide access key, secret, bucket name, region
- Backblaze B2 — provide application key ID, key, bucket name
Remote backups sync after each local backup completes.
What’s Excluded
- Cache directories (wp-content/cache/, litespeed/)
- Log files
- Temporary files