Aller au contenu

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/ — miniatures
  • encoded-video/ — vidéos transcodées
  • lost+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.