Digital Ocean droplet backups or Discourse backups?

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:

  1. Download the latest backup from S3
  2. Create a new Digital Ocean droplet
  3. install Discourse from scratch
  4. 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.

1 Like

Using a floating IP at DigitalOcean is the way to go:

Yes, a droplet backup includes everything.

Before major changes, I take a droplet snapshot at DigitalOcean, so that if things go wrong, it’s easy to restore.

2 Likes