Files
2026-06-09 18:40:21 +02:00

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

  1. Monter le socket Docker en ro : Tugtainer doit inspecter les conteneurs, pas les modifier
  2. Créer le dossier de stockage local ./backups et le monter en volume
  3. Accéder à l'UI : http://IP:8123, créer le compte admin
  4. Détecter les conteneurs : Tugtainer scanne et liste les DB détectées (Postgres, MySQL…)
  5. Configurer un schedule pour chaque conteneur (ex : quotidien à 3h, rétention 7 jours)
  6. Ajouter un canal de notification (Discord webhook, Ntfy…) pour être alerté en cas d'échec
  7. 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 à ro et, idéalement, passer par app-docker-socket-proxy-docker filtré
  • Chiffrer les backups : activer le chiffrement age ou 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