6.2 KiB
title: Tugtainer created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, docker, backup, restauration, go, auto-hebergement] confidence: high contested: false sources: [https://selfh.st/apps/?tag=Docker, https://github.com/Quenary/tugtainer]
🐳 Tugtainer
Les backups automatisés de vos conteneurs, sans douleur : Tugtainer détecte vos bases de données dans les conteneurs (Postgres, MySQL, MariaDB, Mongo, Redis…), lance un dump, et l'envoie vers un stockage distant. Le tout avec une GUI web claire.
📋 Informations Générales
| Champ | Valeur |
|---|---|
| Site web | (GitHub) |
| GitHub | Quenary/tugtainer |
| License | MIT |
| Langage | Go |
| Étoiles GitHub | 1456 ⭐ |
| Dernière MAJ | 2026-06-01 |
| Catégorie | cat-docker |
📝 Description
Tugtainer (prononcer « tug-tai-ner ») est un gestionnaire de backups automatisés pour conteneurs Docker. Il inspecte chaque conteneur en cours d'exécution, identifie le moteur de base de données utilisé (PostgreSQL, MySQL, MariaDB, MongoDB, Redis, SQLite…), et programme des dumps selon un calendrier configurable.
L'idée : éviter d'écrire un script docker exec pg_dump … par service. Tugtainer centralise, planifie, et envoie les dumps vers du stockage distant (S3, SFTP, WebDAV, local…).
- ✅ Détection automatique des DB engines (PostgreSQL, MySQL, MariaDB, Mongo, Redis, SQLite)
- ✅ Planification cron-like : fréquence, heure, conservation (rétention)
- ✅ Backends de stockage : local, S3 (et compatible : Minio, Backblaze B2), SFTP, WebDAV
- ✅ Compression et chiffrement : gzip/zstd + chiffrement age ou GPG
- ✅ Restauration en un clic depuis l'UI
- ✅ Notifications : Discord, Telegram, Ntfy, Gotify, Slack, email
- ✅ GUI web claire : dashboard des conteneurs, dernier backup, taille, état
- ✅ Mode multi-hôte : superviser plusieurs daemons Docker distants
Tugtainer vs app-docker-volume-backup : Tugtainer est spécifique aux bases de données (il fait des dumps cohérents, pas juste un tar du volume). Tugtainer vs cron + docker exec : Tugtainer ajoute la planification, la rotation, la notification et la restauration UI. Tugtainer vs BorgBackup / Restic : Borg/Restic sont génériques ; Tugtainer est spécialisé DB (meilleure restauration granulaire).
🚀 Installation
Docker Compose (recommandé)
# docker-compose.yml
version: '3.8'
services:
tugtainer:
image: ghcr.io/quenary/tugtainer:latest
container_name: tugtainer
restart: unless-stopped
ports:
- "8123:8080" # Web UI
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
- tugtainer-data:/data
- ./backups:/backups # stockage local des dumps
environment:
- TZ=Europe/Paris
- TT_PORT=8080
- TT_DATA_DIR=/data
- TT_BACKUP_DIR=/backups
labels:
- "traefik.enable=true"
- "traefik.http.routers.tugtainer.rule=Host(`backups.example.com`)"
- "traefik.http.routers.tugtainer.entrypoints=websecure"
- "traefik.http.routers.tugtainer.tls.certresolver=letsencrypt"
volumes:
tugtainer-data:
Exemple de backup S3
environment:
- TT_S3_BUCKET=homelab-backups
- TT_S3_ENDPOINT=https://s3.fr-par.scw.cloud
- TT_S3_ACCESS_KEY=xxx
- TT_S3_SECRET_KEY=xxx
⚙️ Configuration Initiale
- Monter le socket Docker en
ro: Tugtainer doit inspecter les conteneurs, pas les modifier - Créer le dossier de stockage local
./backupset le monter en volume - Accéder à l'UI :
http://IP:8123, créer le compte admin - Détecter les conteneurs : Tugtainer scanne et liste les DB détectées (Postgres, MySQL…)
- Configurer un schedule pour chaque conteneur (ex : quotidien à 3h, rétention 7 jours)
- Ajouter un canal de notification (Discord webhook, Ntfy…) pour être alerté en cas d'échec
- Tester un backup manuel depuis l'UI, puis tenter une restauration
🔄 Alternatives
Open Source
- app-docker-volume-backup — backup de volumes entiers (pas de dump DB cohérent)
- BorgBackup / Restic — backups génériques, déduplication, chiffrement
- autobackup / postgres-backup — images mono-services
- Kopia — alternative moderne à Restic
- Duplicati — GUI web, multi-backend
Comparaison Tugtainer vs alternatives
| Critère | Tugtainer | docker-volume-backup | Restic | BorgBackup |
|---|---|---|---|---|
| Dump DB cohérent | ✅ | ❌ (snapshot FS) | ❌ | ❌ |
| Multi-DB auto | ✅ | ❌ (1 service) | ❌ (script) | ❌ (script) |
| GUI web | ✅ | ❌ (logs) | ⚠️ (via GUI tierce) | ⚠️ (Vorta) |
| Stockage S3 | ✅ | ✅ | ✅ | ✅ (via rclone) |
| Restauration granulaire | ✅ | ❌ (volume entier) | ✅ (fichier) | ✅ (archive) |
| Setup | 5 min | 5 min | 30 min | 30 min |
Verdict : Tugtainer est la solution idéale pour des bases Docker quand on veut de la simplicité. Pour des données critiques, combiner avec Restic pour une copie off-site chiffrée.
Propriétaires (ce que Tugtainer remplace)
- CloudBerry Backup (payant)
- Acronis Cyber Protect (payant, lourd)
- SnapShooter (payant, orienté cloud)
🔐 Sécurité
- ⚠️ Socket Docker monté : limiter à
roet, idéalement, passer par app-docker-socket-proxy-docker filtré - Chiffrer les backups : activer le chiffrement
ageou GPG avant envoi sur S3 — un dump Postgres contient des données personnelles - Credentials DB : Tugtainer lit les variables d'env des conteneurs (ex :
POSTGRES_PASSWORD). Ne pas exposer Tugtainer sur Internet sans auth forte - Test de restauration régulier : un backup non testé n'est pas un backup
📚 Ressources
Pages Liées
- cat-docker — Catégorie Docker
- app-portainer / app-dockge / app-yacht — GUI Docker
- app-traefik — Reverse-proxy
- recettes-docker-compose — Compose files
- securisation-home-lab — Bonnes pratiques