Skip to main content

9.1 - Inventaire et plan de migration

Une migration réussie commence par un inventaire. Ne pas arrêter ou supprimer la source tant que la destination et la restauration ne sont pas validées.

Informations à relever

Élément Exemple
Version Immich source v2.7.5
Type de déploiement VM Proxmox avec Docker Compose
Version PostgreSQL valeur du conteneur
Extension vectorielle pgvecto.rs ou VectorChord
Emplacement des médias UPLOAD_LOCATION
Emplacement PostgreSQL DB_DATA_LOCATION
Bibliothèques externes chemins hôte et conteneur
Domaine immich.dreamsaphir.net
OIDC auth.dreamsaphir.net
Destination TrueNAS et dataset Immich

Commandes source

cd /chemin/compose/immich
docker compose ps
docker compose images
docker exec immich_server immich-admin version
docker exec immich_server immich-admin schema-check
grep -E '^(UPLOAD_LOCATION|DB_DATA_LOCATION|IMMICH_VERSION|DB_USERNAME|DB_DATABASE_NAME)=' .env
docker inspect immich_server --format '{{range .Mounts}}{{println .Source "->" .Destination}}{{end}}'

Ne pas afficher DB_PASSWORD dans le rapport.

Taille et fichiers

df -hT
du -sh CHEMIN_MEDIA
find CHEMIN_MEDIA -type f | wc -l

Pour les bibliothèques externes :

du -sh CHEMIN_BIBLIOTHEQUE_EXTERNE
find CHEMIN_BIBLIOTHEQUE_EXTERNE -type f | wc -l

Version de PostgreSQL et extensions

docker exec immich_postgres psql -U postgres -d immich -c 'select version();'
docker exec immich_postgres psql -U postgres -d immich -c '\dx'

Adapter conteneur, utilisateur et base.

Choisir la stratégie de version

Stratégie conservatrice :

  1. restaurer avec la même version Immich que la source ;
  2. vérifier le contenu ;
  3. sauvegarder à nouveau ;
  4. effectuer la montée de version.

Stratégie directe : restaurer le dump dans la version cible et laisser Immich appliquer les migrations. Elle est plus rapide mais ajoute des changements simultanés.

Pour une source v2.7.5 et une cible v3.1.0, la stratégie conservatrice facilite le diagnostic.

Critères de succès

  • nombre d'actifs cohérent ;
  • albums et partages présents ;
  • utilisateurs accessibles ;
  • originaux ouvrables ;
  • bibliothèques externes scannables ;
  • OAuth Web et mobile fonctionnel ;
  • jobs sans erreur critique ;
  • dump de la nouvelle instance validé.