Goal
Recover a Ghost publication from a consistent, StackShift-managed unit instead of restoring its database and files independently.Prerequisites
- A fully provisioned Ghost installation in running state
- A running Ghost service release
- Configured database and stack backup storage
Workflow
1
Open the Ghost project overview.
2
Choose Create recovery point and wait for the point to become completed.
3
Before restoring, confirm that the selected point has the intended Ghost version, timestamp, and reason.
4
Choose Restore and wait for the restore operation to complete.
5
Validate the public publication,
/ghost/, content images, members, and mail settings.What a recovery point contains
- A managed-database backup ID for the Ghost MySQL database.
- A stack backup ID containing the persistent Ghost content volume.
- The service release ID and exact Ghost version active when the point was created.
- The project, stack, database, creator, reason, status, and timestamps.
- An error message when either backup half fails.
Consistency procedure
The publication is briefly unavailable while writes are paused and both artifacts are captured. StackShift always attempts to restart Ghost if backup work exits early, including after a database or content backup failure. A point is restorable only incompleted status.
Backup sequence
Restore behavior
Restore is destructive to the current database and content. Create a fresh recovery point first if the current state may be needed later. The transactional sender is retained, while the private bridge credential is rotated rather than copied from backup.Restore sequence
Recovery-point states
pending: the record exists but backup work has not started.in_progress: Ghost is stopped or one of the paired backups is running.completed: both backup artifacts exist and the point can be restored.failed: the point is not usable; inspect its error and create a new point after fixing the cause.
Validation after restore
- Load multiple public posts and verify images stored in the content volume.
- Sign in to
/ghost/and confirm recent content and settings. - Check members and subscriptions that live in MySQL.
- Send a transactional test and, if configured, verify the Mailgun newsletter connection.
- Review the operation status and logs before resuming editorial work.
Expected result
The managed MySQL database, content volume, and exact backed-up Ghost release are restored together, Ghost restarts, and the project mail credential is rotated.
Common failures
Related guides
Create a private Ghost staging clone
Clone production Ghost data into a separate native project with a new database, new runtime credentials, generated domain, authenticated ingress, and outbound mail disabled.
Upgrade Ghost safely
Use StackShift’s curated upgrade graph, mandatory pre-upgrade recovery point, digest-pinned runtime update, and automatic rollback path.
Ghost troubleshooting and limitations
Diagnose native Ghost provisioning, database, image, routing, mail, recovery, staging, and upgrade failures using persisted operation state and clear resource boundaries.