Erugo À propos Documentation Commencer

Sauvegardes

Des sauvegardes régulières protègent vos données contre les pannes matérielles, les suppressions accidentelles et autres catastrophes. Ce guide couvre ce qu'il faut sauvegarder et comment restaurer votre installation Erugo.

Ne négligez pas les sauvegardes

Sans sauvegardes, une panne de disque ou une suppression accidentelle signifie une perte de données permanente. Configurez des sauvegardes automatisées et testez régulièrement les restaurations.

Que sauvegarder

Erugo stocke toutes les données persistantes dans un seul répertoire monté comme volume Docker. Cela inclut :

  • Base de données — Comptes utilisateurs, partages, paramètres et métadonnées
  • Fichiers téléchargés — Tous les fichiers qui ont été partagés
  • Configuration — Paramètres de l'application et personnalisations
  • Assets personnalisés — Logos, arrière-plans et thèmes personnalisés

Structure du répertoire de stockage

Si vous avez suivi le guide de démarrage rapide, votre répertoire de stockage ressemble à ceci :

Structure des répertoires
erugo-storage/
├── app/
│   ├── database/      # Base de données SQLite
│   ├── uploads/       # Fichiers téléchargés
│   └── ...
├── framework/
│   └── cache/         # Cache de l'application
└── logs/              # Logs de l'application
Sauvegarde en un seul répertoire

L'avantage de l'architecture d'Erugo est que sauvegarder l'intégralité du répertoire erugo-storage capture tout ce dont vous avez besoin pour restaurer votre installation.

Méthodes de sauvegarde

Méthode 1 : Archive simple

L'approche la plus simple consiste à créer une archive compressée du répertoire de stockage :

Terminal
# Arrêter Erugo pour assurer la cohérence des données
docker compose down

# Créer l'archive de sauvegarde
tar -czvf erugo-backup-$(date +%Y%m%d).tar.gz erugo-storage/

# Redémarrer Erugo
docker compose up -d
Arrêtez Erugo pendant la sauvegarde

Pour la cohérence des données, arrêtez les conteneurs avant de sauvegarder. Cela empêche les fichiers d'être modifiés pendant le processus de sauvegarde.

Méthode 2 : Rsync

Pour des sauvegardes incrémentales vers un serveur distant, utilisez rsync :

Terminal
# Synchroniser vers un serveur distant
rsync -avz --delete erugo-storage/ user@backup-server:/backups/erugo/

# Ou synchroniser vers un disque de sauvegarde local
rsync -avz --delete erugo-storage/ /mnt/backup-drive/erugo/

Méthode 3 : Automatisation avec Cron

Configurez des sauvegardes quotidiennes automatisées avec une tâche cron :

backup-erugo.sh
#!/bin/bash
BACKUP_DIR="/backups/erugo"
ERUGO_DIR="/home/erugo/erugo"
DATE=$(date +%Y%m%d_%H%M%S)

# Créer le répertoire de sauvegarde s'il n'existe pas
mkdir -p $BACKUP_DIR

# Arrêter Erugo
cd $ERUGO_DIR
docker compose down

# Créer la sauvegarde
tar -czvf $BACKUP_DIR/erugo-$DATE.tar.gz erugo-storage/

# Démarrer Erugo
docker compose up -d

# Conserver uniquement les 7 dernières sauvegardes
ls -t $BACKUP_DIR/erugo-*.tar.gz | tail -n +8 | xargs -r rm

Ajoutez au crontab pour exécuter quotidiennement à 3h du matin :

Terminal
# Éditer le crontab
crontab -e

# Ajouter cette ligne pour des sauvegardes quotidiennes à 3h
0 3 * * * /home/erugo/backup-erugo.sh >> /var/log/erugo-backup.log 2>&1

Méthode 4 : Stockage cloud

Pour des sauvegardes hors site, synchronisez vers le stockage cloud en utilisant des outils comme :

  • rclone — Prend en charge S3, Google Drive, Dropbox et bien d'autres
  • AWS CLI — Pour Amazon S3
  • gsutil — Pour Google Cloud Storage
Terminal (exemple rclone)
# Configurer rclone d'abord : rclone config
# Puis synchroniser vers le stockage cloud
rclone sync erugo-storage/ remote:erugo-backups/

Restauration à partir d'une sauvegarde

Pour restaurer Erugo à partir d'une sauvegarde :

Étape 1 : Arrêter Erugo

Terminal
cd /home/erugo/erugo
docker compose down

Étape 2 : Supprimer ou renommer les données existantes

Terminal
# Renommer les données existantes (au cas où)
mv erugo-storage erugo-storage-old

Étape 3 : Extraire la sauvegarde

Terminal
# Extraire la sauvegarde
tar -xzvf /path/to/erugo-backup-20241207.tar.gz

Étape 4 : Démarrer Erugo

Terminal
docker compose up -d

Étape 5 : Vérifier

Connectez-vous à Erugo et vérifiez :

  • Les comptes utilisateurs sont intacts
  • Les partages sont accessibles
  • Les paramètres sont corrects
  • Les fichiers téléchargés sont présents
Testez vos restaurations

Testez périodiquement votre processus de sauvegarde et de restauration pour vous assurer qu'il fonctionne quand vous en avez besoin. Une sauvegarde que vous ne pouvez pas restaurer ne vaut rien.

Meilleures pratiques de sauvegarde

  • Automatisez les sauvegardes — Ne comptez pas sur vous-même pour vous souvenir de sauvegarder manuellement
  • Utilisez la règle 3-2-1 — Conservez 3 copies, sur 2 supports différents, avec 1 hors site
  • Testez régulièrement les restaurations — Vérifiez que les sauvegardes fonctionnent réellement
  • Surveillez les tâches de sauvegarde — Configurez des alertes pour les sauvegardes échouées
  • Chiffrez les sauvegardes sensibles — Surtout pour le stockage hors site/cloud
  • Documentez votre processus — Pour que n'importe qui puisse restaurer en cas d'urgence

Reprise après sinistre

Si vous devez restaurer sur un serveur complètement nouveau :

  1. Configurez un nouveau serveur avec Docker (voir Prérequis)
  2. Créez le répertoire Erugo et le fichier docker-compose.yml
  3. Restaurez le répertoire de stockage à partir de la sauvegarde
  4. Démarrez Erugo avec docker compose up -d
  5. Mettez à jour le DNS pour pointer vers le nouveau serveur
  6. Reconfigurez votre proxy inverse si nécessaire