Skip to content

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.

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 run on a configurable schedule. Backups are compressed (zstd or gzip) and stored in your configured S3 destination.

PlanBackup StorageDefault Retention
Free1 GB7 days
Base10 GB14 days
Pro50 GB30 days
AgencyUnlimited90 days
  1. Go to your instance — Open the instance details in the control panel.

  2. Click “Backups” — Navigate to the Backups tab.

  3. Open Settings — Click the gear icon to configure your backup policy.

  4. 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
  5. Set retention — Choose how many days to keep backups (limited by your plan).

  6. Save — Click “Save Changes” to apply.

  1. Go to Backups — Open the Backups tab for your instance.

  2. Click “Backup Now” — Deploy Monkey triggers an immediate backup.

  3. 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.

  4. Done — The new backup appears in the Backups list when complete.

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).

  1. Go to Backups — Find the backup you want to restore from.

  2. Expand the artifact — Click on the backup row to see its details.

  3. Click “Restore from this backup” — This button appears on available backups when no other operation is running.

  4. 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.

  5. 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.

  6. Done — The instance restarts automatically with the restored data.

The restore pipeline runs these steps automatically:

  1. Preflight — Validates the backup is available and no conflicting operations are running
  2. Download database — Downloads the database dump from S3
  3. Download filestore — Downloads the filestore archive from S3
  4. Stop instance — Stops the instance containers via docker compose stop
  5. Restore database — Drops and recreates the database from the backup
  6. Restore filestore — Extracts the filestore archive into the instance volume
  7. Neutralize database (optional) — If neutralization was requested, disables crons, mail, and payments in the restored database
  8. Start instance — Starts the containers back up
  9. Health check — Verifies Odoo is responding correctly
  10. Cleanup — Removes temporary download files

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.

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.

  • 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
  • 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