Self-host DBackup
v4.0.2Database and file backup automation with encryption
- Stars
- 405
- Port
- 3000 (Web UI)
skyfay/dbackupWhat is DBackup?
DBackup is a self-hosted backup application for databases and file systems. It supports ten database engines including PostgreSQL, MySQL, MariaDB, MongoDB, Redis, Valkey, SQLite, and Microsoft SQL variants, connecting directly or via SSH. For files, it reads from local storage, SFTP, SMB, FTP, WebDAV, S3-compatible object stores, major cloud drives, rsync over SSH, and Docker volumes. Backups are compressed with Brotli, encrypted with AES-256-GCM before transfer, and stored as standard dumps or TAR archives. A standalone Recovery Kit restores archives without the main application. Incremental runs capture only changes, while grandfather-father-son policies retain daily, weekly, monthly, and yearly versions. One job can push to multiple destinations. The web UI displays a status calendar, live progress, and alerts via nine channels such as Discord, Slack, Teams, Telegram, Gotify, ntfy, webhooks, Twilio SMS, and email. Team capabilities include OpenID Connect sign-on, role-based access, two-factor authentication, passkeys, audit logs, and a REST API for automation with scoped tokens. Deployment uses a single Docker image (skyfay/dbackup) for AMD64 and ARM64, configured through docker-compose with three environment variables. Licensed under GPL-3.0.
Should you self-host DBackup?
DBackup scores 55/100 on selfhost.directory (how scoring works) and ranks #24 of 46 in Backup. It has 405 GitHub stars.
It shipped 21 stable releases in the past year. The latest, v4.0.2, came out on 12 October 2026. New versions land roughly every 5 days.
Setup is moderate: expect some configuration beyond a single command. An official Docker image is available. It is GPL-3.0-licensed and written mostly in Typescript.
Its closest alternative on selfhost.directory is Restic (82/100, 36 854 stars). It scores higher overall, so compare the two before you pick. See DBackup vs Restic side by side.
Features
- Audit Log
- Backup calendar
- Compression
- Database backup
- Encryption
- File and directory backup
- Incremental Backups
- Multi-destination jobs
- Notifications
- OIDC SSO
- Recovery Kit
- REST API
- Smart retention (GFS)
- Two-factor authentication
- Web-based restore
DBackup README
FAQ
Can I send one backup to multiple storage destinations?
Yes. Multi-destination jobs upload each backup to several storage adapters at once for redundancy or off-site copies.
What license is DBackup released under?
GPL-3.0. The source code is fully open and available on GitHub.
Is there a hosted or cloud version?
No. DBackup is self-hosted only, distributed as a single Docker image you run on your own infrastructure.
Does DBackup deduplicate like restic or Borg?
Not globally. Incremental backups store whole changed files and reference unchanged ones in earlier archives, keeping each archive as a plain TAR. Global deduplication would create lock-in which DBackup avoids.
Can DBackup back up Docker volumes?
Yes, currently in beta. DBackup picks volumes from the Docker daemon (locally or over SSH), mounts them into a helper container to read them, and restores back into the same or a new volume.
Can DBackup back up files and folders, not just databases?
Yes. Any storage adapter can serve as a directory source including local paths, SFTP, SMB, FTP, WebDAV, S3, Google Drive, Dropbox, OneDrive, rsync over SSH, or Docker volumes. Files and databases can share one job.
Which databases are supported?
MySQL, MariaDB, PostgreSQL, MongoDB, SQLite, Redis, Valkey, Microsoft SQL Server, Azure SQL Database (beta), and Firebird (beta).
What happens if DBackup becomes unavailable - can I still restore?
Yes. Every backup is a standard database dump encrypted with open AES-256-GCM. With the key from your Recovery Kit and a standalone Node.js script, you can decrypt and restore without DBackup running at all.
More in Backup
docker-borg-mysql-backupSelf-hosted Docker container backing up MySQL/PostgreSQL and files to Borg repos with cron scheduling, encryption, pruning, and error notifications.
docker-duplicatiSelf-hosted, open-source Docker image of the Duplicati backup client: encrypted changed-only backups to disks, S3, OneDrive, Google Drive, with a web UI on port 8200.
docker-immichA single-container Docker image bundling Immich server, machine learning, and dependencies for self-hosted photo and video backup with hardware acceleration support.
Docker Volume BackupSelf-hosted, open-source Docker companion container that archives volumes locally or to S3, WebDAV, SSH or Azure storage on a cron, with rotation and GPG encryption.
DuplicacySelf-hosted command-line backup tool with lock-free deduplication and client-side encryption, pushing snapshots to local disks, SFTP servers, or a dozen cloud storages.
DuplicatiOpen-source, self-hosted backup client that encrypts with AES-256 and stores incremental, compressed backup copies on cloud storage services or remote file servers.
ElkarBackupElkarBackup is a self-hosted, open-source backup solution centralizing Linux and Windows backups via web UI, built on rsync/rsnapshot with instant recovery.
garageOpen-source, self-hosted S3-compatible object store in Rust for small geo-distributed clusters, shipped as a single dependency-free binary needing no external service.- Git Annexgit-annex allows managing large files with git, without storing the file contents in git. It supports syncing, backing up, and archiving data across multiple devices, with checksums and encryption for security.
gitbackerA self-hosted tool that automatically backs up git repositories from any host with encryption and lets you restore snapshots after reviewing changes.
Gitea MirrorMirrors GitHub repositories to self-hosted Gitea/Forgejo, preserving issues, PRs, releases, wiki, and LFS files.
gocronSelf-hosted, open-source cron scheduler: jobs defined in YAML run shell commands on schedule, with a web UI for logs, SQLite history and optional OIDC login.
0 comments