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.
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 :
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
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 :
# 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 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 :
# 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 :
#!/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 :
# É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
# 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
cd /home/erugo/erugo
docker compose down Étape 2 : Supprimer ou renommer les données existantes
# Renommer les données existantes (au cas où)
mv erugo-storage erugo-storage-old Étape 3 : Extraire la sauvegarde
# Extraire la sauvegarde
tar -xzvf /path/to/erugo-backup-20241207.tar.gz Étape 4 : Démarrer Erugo
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 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 :
- Configurez un nouveau serveur avec Docker (voir Prérequis)
- Créez le répertoire Erugo et le fichier docker-compose.yml
- Restaurez le répertoire de stockage à partir de la sauvegarde
- Démarrez Erugo avec
docker compose up -d - Mettez à jour le DNS pour pointer vers le nouveau serveur
- Reconfigurez votre proxy inverse si nécessaire