---
title: Databasus
created: 2026-06-07
updated: 2026-06-07
type: app
tags: [catalogue, database, backup, postgresql, typescript, fair-source, intermediate]
confidence: high
contested: false
sources: [https://selfh.st/apps/?tag=Database, https://github.com/databasus/databasus]
---

# 🗄️ Databasus

> **Le spécialiste de la sauvegarde PostgreSQL automatisée** : planification, chiffrement, restauration sélective. Une alternative moderne et self-hosted aux services managés type pgBackWeb.

## 📋 Informations Générales

| Champ | Valeur |
| :--- | :--- |
| **Site web** | [databasus.com](https://databasus.com/) |
| **GitHub** | [databasus/databasus](https://github.com/databasus/databasus) |
| **License** | **Fair Source** (source visible, restrictions sur les usages commerciaux concurrents) |
| **Langage** | TypeScript (Node.js) |
| **Étoiles GitHub** | 7,1k ⭐ |
| **Dernière MAJ** | 2026-05-30 |
| **Catégorie** | [[cat-database\|Database]] |

## 📝 Description

**Databasus** est un outil **self-hosted de backup PostgreSQL** qui automatise planification, exécution et restauration des sauvegardes. Le projet vise clairement la simplicité opérationnelle : une UI web claire, peu de configuration, et des sauvegardes fiables avec rotation et notification. C'est un projet relativement jeune mais qui a rapidement trouvé sa place grâce à son approche opinionated et à son expérience utilisateur soignée.

⚠️ **À noter sur la licence** : Databasus utilise une licence **Fair Source** (équivalent de Business Source License). Cela signifie que le code source est **public et lisible**, mais qu'il existe des **restrictions sur l'usage commercial** : il est interdit de proposer Databasus en tant que service concurrent. Pour un usage personnel ou en entreprise interne, c'est libre ; pour du SaaS commercial, il faut contacter l'éditeur. Cette licence est différente des classiques MIT/Apache/AGPL et mérite d'être lue attentivement.

Fonctionnellement, Databasus supporte pg_dump et pg_basebackup, avec stockage sur disque local, S3, MinIO ou tout backend compatible. Les sauvegardes peuvent être chiffrées (AES-256), compressées, et la rotation est configurable par stratégie (nombre de sauvegardes conservées, durée). L'UI permet de **restaurer une sauvegarde en un clic** vers une base existante, ou de planifier des jobs récurrents. Le monitoring (succès/échec) remonte dans la même UI.

**Public cible** : **équipes utilisant PostgreSQL en production**, devs qui veulent un backup fiable sans scripter à la main, admins qui ont besoin d'une UI centralisée pour plusieurs bases.

### Fonctionnalités principales

- ✅ **Backups planifiés** : quotidien, horaire, custom cron
- ✅ **PostgreSQL** : pg_dump (logique) + pg_basebackup (physique)
- ✅ **Stockage multiple** : disque local, S3, MinIO, S3-compatible
- ✅ **Chiffrement AES-256** des sauvegardes
- ✅ **Restauration sélective** : choisir une sauvegarde et la restaurer en 1 clic
- ✅ **Rétention** : stratégie par nombre ou durée (GFS rotatif)
- ✅ **Notifications** : Email, Telegram, Discord, Webhook
- ✅ **Multi-bases** : gérer plusieurs instances PostgreSQL depuis une seule UI
- ✅ **Compression** : gzip, zstd

## 🚀 Installation

### Docker Compose (recommandé)

```yaml
# docker-compose.yml
version: '3.8'
services:
  databasus:
    image: databasus/databasus:latest
    container_name: databasus
    restart: unless-stopped
    ports:
      - "8080:8080"
    environment:
      # Secret à changer en prod !
      APP_SECRET_KEY: "changez-moi-en-production-32-chars-min"
      APP_BASE_URL: "https://backup.example.com"
    volumes:
      - databasus_data:/app/data
      - databasus_backups:/backups
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.databasus.rule=Host(`backup.example.com`)"
      - "traefik.http.routers.databasus.entrypoints=websecure"
      - "traefik.http.routers.databasus.tls.certresolver=letsencrypt"

volumes:
  databasus_data:
  databasus_backups:
```

### Docker Run (minimal)

```bash
docker run -d \
  --name databasus \
  --restart unless-stopped \
  -p 8080:8080 \
  -e APP_SECRET_KEY="$(openssl rand -hex 32)" \
  -v databasus_data:/app/data \
  -v databasus_backups:/backups \
  databasus/databasus:latest
```

## ⚙️ Configuration Initiale

1. **Créer le compte admin** : à la première connexion, créer un utilisateur avec un mot de passe fort
2. **Ajouter une instance PostgreSQL** : URL de connexion, identifiants, base par défaut
3. **Configurer le stockage distant** (optionnel) : S3, MinIO, etc.
4. **Créer un job de backup** : planification, type (logique/physique), rétention
5. **Activer les notifications** : Telegram/Email/Discord pour les succès et échecs
6. **Tester la restauration** : créer un job et le restaurer pour valider la chaîne complète

## 🔄 Alternatives

### Open Source

- **pgBackRest** — Le standard pro pour PostgreSQL (CLI, robuste, incremental)
- **wal-g** — Backup continu basé sur les WAL Postgres
- **pgBackWeb** — Interface web UI pour pgBackRest, plus récente
- **Barman** — Solution de backup managée par EnterpriseDB
- [[app-velld]] — Backups multi-bases (MySQL, Postgres, Mongo)
- **autobackup** — Scripts shell minimalistes

### Comparaison Databasus vs alternatives

| Critère | Databasus | pgBackWeb | pgBackRest | wal-g |
| :--- | :--- | :--- | :--- | :--- |
| Interface web | ✅ | ✅ | ❌ | ❌ |
| Facilité de setup | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐ | ⭐⭐ | ⭐⭐ |
| UI intégrée | ✅ | ✅ | ❌ | ❌ |
| Stockage S3 | ✅ | ✅ | ✅ | ✅ |
| Chiffrement | ✅ | ✅ | ✅ | ✅ |
| Incrémental | ❌ | ❌ | ✅ | ✅ |
| Licence | Fair Source | AGPL | MIT | Apache |

**Verdict** : Databasus brille par sa **simplicité et son UI**. Pour des besoins de PITR (point-in-time-recovery) ou des bases très volumineuses, préférer pgBackRest ou wal-g.

### Propriétaires (ce que Databasus remplace)

- **Cloud SQL automated backups** (Google)
- **RDS automated backups** (AWS)
- **Crunchy Bridge Backup**
- **Aiven backup service**

## 🔐 Sécurité

- **🔐 `APP_SECRET_KEY` obligatoire en production** : sert à chiffrer les credentials des bases dans la BDD interne. `openssl rand -hex 32` minimum
- **🔒 Stocker les sauvegardes hors du serveur** : S3/MinIO plutôt que disque local, sinon un crash disque = perte du backup
- **🛡️ Chiffrement AES-256 des sauvegardes** : activé par défaut, conserver la clé de chiffrement dans un vault (Bitwarden, KeePass, Vaultwarden)

## 📚 Ressources

- [Site officiel](https://databasus.com/)
- [Documentation](https://docs.databasus.com/)
- [GitHub databasus/databasus](https://github.com/databasus/databasus)
- [Fair Source Definition](https://fair.io/)

## Pages Liées

- [[cat-database]] — Catégorie Database
- [[app-traefik]] — Pour exposer Databasus en HTTPS
- [[recettes-docker-compose]] — Intégration dans une stack existante
- [[securisation-home-lab]] — Bonnes pratiques de backup
