Backups & Restore
Snapshot your world on demand or on a schedule, restore in a couple of clicks, and copy backups offsite.
A VPS can fail, and a bad mod or a careless command can wreck a world. Backups are the cheapest insurance you have. Beacon makes world snapshots a first-class dashboard feature.
Always snapshot before an upgrade
Take a snapshot before updating Beacon or bumping the Minecraft version — world upgrades can be one-way.
Snapshots from the dashboard
Open beacon admin → Server → Backups. From there you can:
- Create a snapshot of the current world on demand.
- Schedule automatic snapshots and set retention (keep the last N, and age out older ones) so backups don't fill the disk.
- Restore a snapshot — Beacon stops the server, swaps the world, and brings it back.
Snapshots are managed through admin-rpc with the same role checks and audit
logging as every other privileged action.
Where backups live on the host
Inside the deployment directory, the world and its snapshots are bind-mounted on the host:
./data/— the live Minecraft world and server files../backups/— world snapshots.
Because these are plain directories on the host, you can fold them into your own backup tooling.
Copy backups offsite
A backup on the same disk as the world doesn't survive a host failure. Copy
./backups/ somewhere else regularly. For example, sync to object storage with
rclone:
rclone sync ./backups remote:beacon-backupsWire that into cron or a systemd timer on the host. Restoring offsite backups
is the reverse — pull them back into ./backups/ and restore from the
dashboard.
Back up the whole deployment directory
For a complete picture, also keep a copy of the deployment directory's .env
(it holds your generated secrets). With .env, ./data, and ./backups you
can reconstruct a beacon on a new host.
Restoring after a disaster
On a fresh host: install the CLI, recreate the beacon (or restore the
deployment directory and beacon up), then place your backup into ./backups/
and restore it from Server → Backups. Pin the same BEACON_VERSION and
MC_VERSION you were running so the world loads cleanly.