Backups & Restore
import { Steps, Aside } from ‘@astrojs/starlight/components’;
Deploy Monkey provides automated S3-backed backups and one-click restore so you never lose your Odoo data.
Backup Overview
Section titled “Backup Overview”Every backup includes:
- PostgreSQL database dump — Complete database export (pg_dump)
- Filestore archive — Uploaded files, attachments, and images (compressed)
- Manifest — JSON metadata with checksums, sizes, and Odoo version info
Backups are stored on S3-compatible storage (AWS S3, MinIO, Wasabi, Backblaze B2, etc.) and managed automatically by Deploy Monkey.
Automated Backups
Section titled “Automated Backups”Automated backups run on a configurable schedule. Backups are compressed (zstd or gzip) and stored in your configured S3 destination.
| Plan | Backup Storage | Default Retention |
|---|---|---|
| Free | 1 GB | 7 days |
| Base | 10 GB | 14 days |
| Pro | 50 GB | 30 days |
| Agency | Unlimited | 90 days |
Configuring Backup Policy
Section titled “Configuring Backup Policy”-
Go to your instance — Open the instance details in the control panel.
-
Click “Backups” — Navigate to the Backups tab.
-
Open Settings — Click the gear icon to configure your backup policy.
-
Set schedule — Choose your backup frequency:
- Daily (2:00 AM UTC) — recommended for most instances
- Every 12 Hours — for active databases with frequent changes
- Every 6 Hours — for mission-critical instances
- Weekly (Sunday 2:00 AM) — for low-activity instances
-
Set retention — Choose how many days to keep backups (limited by your plan).
-
Save — Click “Save Changes” to apply.
Creating a Manual Backup
Section titled “Creating a Manual Backup”-
Go to Backups — Open the Backups tab for your instance.
-
Click “Backup Now” — Deploy Monkey triggers an immediate backup.
-
Monitor progress — The UI switches to the Activity tab and shows live step-by-step progress. A typical backup takes 1–5 minutes depending on database size.
-
Done — The new backup appears in the Backups list when complete.
Backup Artifacts
Section titled “Backup Artifacts”The Backups tab lists all your backup artifacts with:
- State — available, expired, deleting, deleted
- Verify status — whether the S3 objects have been verified intact
- Size — actual stored size in S3
- Compression — gzip or zstd
Click any artifact to expand its detail view showing creation date, expiry date, Odoo version, edition, and available actions (restore, delete).
Restoring from a Backup
Section titled “Restoring from a Backup”-
Go to Backups — Find the backup you want to restore from.
-
Expand the artifact — Click on the backup row to see its details.
-
Click “Restore from this backup” — This button appears on available backups when no other operation is running.
-
Confirm — A dialog warns that restoring will stop the instance, replace the database and filestore, then restart. Any changes made after this backup will be lost.
-
Monitor progress — The UI switches to the Activity tab showing the restore pipeline in real-time. The instance status changes to “Restoring” with an amber indicator.
-
Done — The instance restarts automatically with the restored data.
What happens during a restore
Section titled “What happens during a restore”The restore pipeline runs these steps automatically:
- Preflight — Validates the backup is available and no conflicting operations are running
- Download database — Downloads the database dump from S3
- Download filestore — Downloads the filestore archive from S3
- Stop instance — Stops the instance containers via
docker compose stop - Restore database — Drops and recreates the database from the backup
- Restore filestore — Extracts the filestore archive into the instance volume
- Neutralize database (optional) — If neutralization was requested, disables crons, mail, and payments in the restored database
- Start instance — Starts the containers back up
- Health check — Verifies Odoo is responding correctly
- Cleanup — Removes temporary download files
Cancelling a restore
Section titled “Cancelling a restore”You can cancel a queued or in-progress restore:
- Click Cancel on the amber restore banner at the top of the Backups page
- Or click Cancel on the restore row in the Activity tab
Cancellation happens at the next step boundary — the current step finishes before stopping.
Activity Tab
Section titled “Activity Tab”The Activity tab shows a unified chronological history of all backup runs and restore runs. Each entry displays:
- Type badge — blue “Backup” or amber “Restore”
- State — queued, running, success, warning, failed, or cancelled
- Duration and details for completed runs
- Cancel button for active runs
Click any run to expand its step-by-step timeline with per-step timing and error details.
Troubleshooting
Section titled “Troubleshooting”Backup Failed
Section titled “Backup Failed”- Check that the S3 destination is configured and reachable
- Verify the instance is running (stopped instances cannot be backed up)
- Large databases may take longer — check the step timeline for which step failed
- Check server disk space — backups need temporary space for archiving
Restore Failed
Section titled “Restore Failed”- Verify the backup artifact is in “available” state (not expired or deleted)
- Check server disk space — restore needs temporary space for the downloaded files
- If the instance is stuck in “restoring” status, the stale recovery cron will detect it within 10 minutes
- Check the step timeline in the Activity tab for specific error messages