DocsOperationBackups

Backups

Backing up vuzon is copying one Docker volume — the credentials hash and the session signing key. Everything else lives at Cloudflare.

What there is to back up

vuzon has no database. Your aliases, rules and destinations live in your Cloudflare account — reinstalling vuzon rediscovers them. The only local state is the vuzon-data volume:

  • The panel credentials, as a scrypt hash.
  • The session signing key.

Also keep a copy of your .env (it holds DOMAIN and CF_API_TOKEN).

Losing the volume means losing the panel password. The setup wizard reopens on the next visit and the first visitor claims the panel — treat the backup like any other homelab state.

Backing up the volume

From the directory with your docker-compose.yml:

terminal
$ docker compose stop vuzon
$ docker run --rm -v vuzon_vuzon-data:/data -v "$PWD":/backup alpine \
    tar czf /backup/vuzon-data.tgz -C /data .
$ docker compose start vuzon

The volume name is prefixed with the Compose project name (the directory name by default) — check yours with docker volume ls.

Restoring

terminal
$ docker compose stop vuzon
$ docker run --rm -v vuzon_vuzon-data:/data -v "$PWD":/backup alpine \
    sh -c "rm -rf /data/* && tar xzf /backup/vuzon-data.tgz -C /data"
$ docker compose start vuzon

Sessions survive the restore — the signing key is part of the backup.