Disclosure: this page contains affiliate links. If you buy through them we may earn a commission at no extra cost to you.

Most VPS providers offer no automatic backups on cheap plans — and even the ones that do, you shouldn’t rely on a single copy. If your server is worth running, it’s worth backing up. Here’s a sane, simple strategy.

The 3-2-1 rule, applied to VPS

  • 3 copies of your data
  • 2 different storage types (the VPS disk + object storage / another server)
  • 1 off-site (not in the same datacenter)

What to back up

You don’t need to image the whole OS — that’s mostly reinstallable. Back up the state:

  • Application data (databases, uploads, configs)
  • Your /etc configs and any custom scripts
  • Your Docker Compose files — if you Dockerized everything, these ARE your server, and they’re tiny

A practical setup

Use restic (encrypted, deduplicating, free) pointed at cheap object storage:

sudo apt install -y restic
restic init --repo s3:s3.amazonaws.com/YOUR_BUCKET/backup

Then a nightly cron to snapshot your data directories:

restic backup /srv/docker /etc /home

And test a restore. A backup you haven’t restored is a hope, not a backup.

Keep the backup somewhere separate

Store backups off-site from your main VPS — cheap object storage, or even a second small VPS. If a fire/outage hits one datacenter, you still have your data.

Grab a cheap second VPS for backups

Bottom line: Docker Compose files in Git + nightly restic snapshots off-site = you can rebuild your whole server in minutes. Set it up once and sleep better.