Backup Immich
Stratégie
Sauvegarde gratuite au quotidien vers Backblaze B2. Paiement uniquement à la restauration (téléchargement des données).
Architecture
LXC 104 (Immich)
└── /mnt/ext/ (données photos, ~279 Go)
├── media/ → sync rclone → B2: immich-backup-val/media/
└── backups/ → sync rclone → B2: immich-backup-val/backups/
└── dump_YYYY-MM-DD.sql (7 derniers jours)
Composants
| Composant | Détail |
|---|---|
| Outil | rclone v1.73.5 |
| Destination | Backblaze B2, bucket immich-backup-val (privé) |
| Script | /root/backup-immich.sh sur LXC 104 |
| Fréquence | Quotidien à 3h00 |
| Log | /var/log/backup-immich.log |
Exclusions
Les répertoires suivants sont exclus de la sync (régénérables automatiquement par Immich) :
thumbs/— miniaturesencoded-video/— vidéos transcodéeslost+found/
Volume et coût
| Volume synchronisé | ~228 Go |
| Coût estimé | ~1,37 $/mois |
| Modèle B2 | Stockage : 0,006 $/Go/mois — Téléchargement : 0,01 $/Go |
Dump base de données
- Outil : dump natif Immich (PostgreSQL)
- Fréquence : quotidien à 2h30 (avant la sync rclone)
- Rétention locale : 7 jours dans
/mnt/ext/backups/ - Les dumps sont inclus dans la sync B2
Monitoring
Les deux crons (dump DB + sync rclone) envoient un ping Push à Uptime Kuma à chaque exécution réussie. Une absence de ping déclenche une alerte ntfy.
| Cron | Push ID Uptime Kuma |
|---|---|
| Dump DB (2h30) | CZ7JAJDQTc |
| Backup rclone (3h00) | FlCqAbA9ZX |
Restauration
# 1. Télécharger les données depuis B2 (payant au téléchargement)
rclone sync b2:immich-backup-val/media/ /mnt/ext/
# 2. Restaurer la base de données
psql -U postgres immich < /mnt/ext/backups/dump_YYYY-MM-DD.sql
Coût de restauration
Le téléchargement de 228 Go depuis B2 coûte environ 2,28 $ (0,01 $/Go). Les 1 premiers Go/jour sont gratuits.