Vault is a backup and restore daemon for Unraid servers. It backs up Docker containers, libvirt VMs, ZFS datasets, folders, and plugins. It supports local disk, SFTP, SMB, NFS, WebDAV, and S3-compatible storage.
Vault includes a Svelte 5 web UI, a REST API, and an MCP server. It sends progress updates over WebSocket.
Backup sources
- Docker container images, XML templates, and included volumes. You can exclude paths for each container.
- libvirt VMs in live snapshot or cold mode, with NVRAM.
- ZFS datasets with native
zfs sendandzfs receive. - Folders on the host and installed Unraid plugins.
- Status for items that Vault cannot find on the host.
Storage destinations
- Local disk, SFTP, SMB, NFS, WebDAV, and S3-compatible storage.
- Bandwidth limits for each remote destination.
- Connection and storage health tests.
- Import of backups from other Vault servers or AppData Backup.
Backup options
- Full, incremental, and differential backups.
- Simple count retention or Long-Term Retention (LTR).
- Password-based encryption with age.
- Content-defined deduplication with a repository for each destination. Use
vault dedup gcandvault dedup repairfor maintenance. - SHA-256 verification after a backup and on-demand verification of restore points.
- Discord notifications for backup success or failure.
Scheduling
- Cron schedules and presets for hourly, daily, weekly, monthly, and yearly backups.
- First-day and last-day schedules for each month.
- Vault cancels a backup after approximately two hours without data transfer. A backup that continues to transfer data has no fixed time limit.
Web UI
- Dashboard, Jobs, Storage, Replication, Restore, History, Disaster Recovery, Logs, and Settings.
- Backup progress and queue status.
- Light and dark themes and a layout for small screens.
- Recovery instructions for a replacement server.
Integration and diagnostics
- REST API at
/api/v1. Remote clients need an API key. - MCP server over Streamable HTTP. A stdio bridge can connect Claude Desktop and other clients.
- Home Assistant integration (ha-vault).
- SQLite database recovery from a persistent snapshot or USB shadow after reboot.
- Diagnostics download with credential values removed.
Search for Vault in Unraid Community Applications. Click Install.
-
In the Unraid web UI, open Plugins → Install Plugin.
-
Paste this URL.
https://raw.githubusercontent.com/tinkerologie/vault/main/plugin/vault.plg -
Click Install.
- Open Storage.
- Add a storage destination.
- Open Jobs.
- Click Create Job.
- Select the items to back up.
- Set the schedule.
- Set the retention options.
- Save the job.
- Click Run Now to start the job immediately.
- Open History to see the result.
| Document | Description |
|---|---|
| Getting Started | Visual walkthrough of the web UI with screenshots |
| Backup Jobs | Job options, scheduling, retention, restore |
| Storage Destinations | Per-backend configuration with provider notes |
| Anomaly Detection | Drift/reliability/capacity alerts + baseline learning |
| API Reference | Full REST API endpoint reference |
| MCP Integration | Model Context Protocol server for AI tools |
| Architecture | Project structure, build commands, deployment |
| Contributing | Contribution guidelines and development setup |
| Changelog | Release notes by version |
Home Assistant users: use the ready-to-use custom integration at ha-vault.
- Unraid 7.0 or newer
- Bug reports: open a bug report
- Enhancement requests: request an improvement
- Questions and support: use the Unraid forum support thread
Vault is licensed under the GNU Affero General Public License v3.0. It is a third-party community plugin for Unraid OS.
