Restore & Archives

Restore sites (WordPress or custom paths) from restic snapshots or portable archives stored on the dashboard.

Active job

While a restore or export is running, the Restore page shows live progress on the Active job card. Full history of all job types remains on Jobs.

Typical work shown here:

  • Restore from repository snapshot
  • Export snapshot / export latest to archive
  • Archive restore (including chunked upload restore)

Restore from repository

Restore a site from a restic snapshot that already exists (local on the agent or remote offsite), or export that snapshot to a portable archive.

  1. Select site — On the Restore page, start by selecting a site under the "Restore from repository" card.
  2. Select snapshot — A list of available snapshots will load for that site (date, size, source, snapshot id).
  3. Review details, then Restore snapshot.
  4. Watch progress on Active job and Jobs.

Restore writes back onto the site path on the agent host. Confirm the correct site and snapshot before continuing.

Export to archives

Export to archives builds a portable .tar.gz from the selected snapshot and stores it on the dashboard under Archives → Stored archives. Use this for offline copies, handoff, or later restore without re-reading the full restic repo.

Passwords

Destination Password location
Local agent repos Dashboard-managed (encrypted credentials); included in Security recovery bundle
Remote (S3 / B2 / SFTP) Dashboard-managed; included in Security recovery bundle

Archives

Archives are portable .tar.gz packages stored on the dashboard (not only inside restic).

Export latest snapshot

Picks the most recent recorded snapshot for a site and queues an export job. When finished, the file appears under Stored archives (live updates).

Upload archive

Upload a .tar.gz from your computer in chunks. Packages stay on the dashboard so the agent can pull them with per-chunk progress when you restore.

  1. Choose Target site (agent that will receive/restore the package).
  2. Optionally Also queue agent restore immediately — otherwise only store the package.
  3. Chunk size is derived from PHP upload limits shown on the card.

Stored archives

List of archives: site, file, snapshot, size, created. Typical actions: Restore, Download, Delete. Use Refresh if a just-finished export is not visible yet.

Goal Flow
DR copy off-box Export latest or specific snapshot → Download to safe storage
Move site between agents Export from source → upload/share package → restore on target
Point-in-time when restic is available Prefer Restore from repository

Upload limits {#upload-limits}

HTTP 413 Payload Too Large almost always means nginx and PHP body size limits do not match.

Align:

  • client_max_body_size (nginx)
  • upload_max_filesize / post_max_size (PHP)
  • FPM pool overrides if any

The Archives card documents the effective chunk/limit the UI derived from PHP settings.

Troubleshooting

  • No snapshots? Run a successful backup first; check primary / destinations.
  • Job fails immediately? Agent offline or cannot unlock the repo (password / destination).
  • Wrong content restored? Double-check snapshot id and site path on the agent.