selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

DBackup logo

Self-host DBackup

v4.0.2

Database and file backup automation with encryption

ReleaseOpen SourceGPL-3.0
Updated9 hours ago
LanguageTypescript
Setup difficultyModerate
Stars
405
Port
3000 (Web UI)
Docker
skyfay/dbackup
Install with Docker Compose

What 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

How to install DBackup

Install DBackup with Docker Compose

Environment variables
ENCRYPTION_KEY, BETTER_AUTH_URL, BETTER_AUTH_SECRET

services: dbackup: image: skyfay/dbackup:latest container_name: dbackup restart: always ports: - "3000:3000" environment: - ENCRYPTION_KEY= # openssl rand -hex 32 - BETTER_AUTH_URL=https://localhost:3000 - BETTER_AUTH_SECRET= # openssl rand -base64 32 volumes: - ./data:/data # All persistent data - ./backups:/backups # Optional, for local backups

docker compose up -d

Images built for AMD64 and ARM64

How to configure DBackup

  • BETTER_AUTH_SECRETSecret for authentication (generate with openssl rand -base64 32)

    Secret for authentication (generate with openssl rand -base64 32)

  • BETTER_AUTH_URLBase URL for authentication (e.g., https://localhost:3000)

    Base URL for authentication (e.g., https://localhost:3000)

  • ENCRYPTION_KEYEncryption key for AES-256-GCM backup encryption (generate with openssl rand -hex 32)

    Encryption key for AES-256-GCM backup encryption (generate with openssl rand -hex 32)

DBackup releases & version history

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

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…