I had a few hours of downtime in my site today due to some docker/nginx issue and at some point I considered restoring from a backup.
Luckily, I was able to get it working again, but it made me wonder what would have been the right restore procedure.
I currently have daily automatic Discourse backups set up with S3 and also weekly Digital Ocean droplet backups, but if for some reason I can’t access my discourse admin panel, how should I restore a previous backup?
I’m assuming I’d have to do this:
- Download the latest backup from S3
- Create a new Digital Ocean droplet
- install Discourse from scratch
- Restore the backup
I’d also have to replace a previously saved version of my app.yml
and /etc/nginx/sites-available/default
and modify my DNS and mailer settings? Is there a simpler way?
I guess another option would be to restore a droplet backup directly (which I assume would include the discourse data), but since these happen only weekly, I’d lose a lot more data.
One option could be to set up daily/hourly backups with weap.io or snapshooter.io. Is this recommended?
I’d love to know if there’s anything I’m missing or if I should consider another approach.