Asustor [Tuto] Immich : mon installation docker sur Asustor AS6602T

  • Vague de SPAM

    Suite à une vague de spam sur le forum, les inscriptions sont temporairement limitées.

    Après votre inscription, un membre de l'équipe devra valider votre compte avant qu'il ne soit activé. Nous sommes désolés pour la gêne occasionnée et vous remercions de votre patience.

shaks2022

Maître Jedi
Membre Confirmé
22 Février 2022
738
222
118
Préambule

J'ai découvert Immich ya 15 jours. Oubliez Photoprism , Librephotos et Photogallery , Immich est encore très jeune mais bien plus complet.
J'ai choisi d'Installer directement sur Docker, bien que l'application existe dans le store. Je ne referai pas l'erreur faite pour Photoprism . : les upgrade sont fréquents , et il faut pouvoir suivre à la lettre les modifications d'architecture qui pourraient survenir.

Immich permet de transférer automatiquement les photos de son smartphone , les organise selon un schéma qu'on peut customiser.. Je n'utilise rien de tout ceci : j'organise et transferre les photos dans Immich manuellement, selon mon rythme.
Je trouve que c'est la meilleure solution pour passer en douceur d'un logiciel d'album photos/videos vers un autre.

Je vais donc utiliser une 'bibliothèque externe ' , ( Autre lien) que je vais déclarer dans Immich en lecture seule histoire que Immich ne vienne rien modifier : mes médias sont déjà organisés en dossiers dans un partage du NAS (/share/M_priv).
Bon à savoir : une bibliothèque externe ne peut être associée qu'à un seul utilisateur dans Immich...pour l'instant ( source )

installation
Basée sur https://docs.immich.app/install/docker-compose/

- choisir un endroit de stockage qui contiendra le paramétrage docker, les vignettes , la bdd postgres . Sur Asustor : dans /share, en évitant /share/docker/Immich qui risque d'être l'emplacement de l'application Immich packagée pour Asustor .
Mon choix : /share/Syst_interne/Immich ( Syst_interne étant un share déjà existant chez moi ). Ce répertoire est './immich-app' dans la doc Immich .
Prévoir au moins 10% de consommation disque .exemple : votre bibliothèque externe fait 500Go, prévoyez 50Go.

- créer le répertoire d'accueil /share/Syst_interne/Immich
- se connecter root sur le NAS
- Taper la commande
Code:
 cd /share/Syst_interne/Immich
wget -O docker-compose.yml https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml
wget -O .env https://github.com/immich-app/immich/releases/latest/download/example.env

- Editer le fichier .env
> générer un mot de passe pour DB_PASSWORD
> rajouter ceci à la fin pour que le container tourne avec les droits root :
Code:
UID=999
GID=999

- Editer le fichier docker-compose.yml
Rajouter la ligne suivante après la ligne /etc/localtime:/etc/localtime:ro
Code:
      - /share/M_priv:/external/m_priv:ro
!Attention à l'indentation! ( le décalage )
Les bibliothèques externes sont 'external' dans l'arborescence locale d'Immich, et m_priv sera le nom de ma bibliothèque externe .

Et on est déjà prêt à démarrer Immich pour la 1ère fois: taper
Code:
docker compose up -d


Post-installation

Si tout démarre bien ( ça prendra 10mn), alors on va suivre la page https://docs.immich.app/install/post-install

La doc est très claire
Bon à savoir : le userid , c'est l'adresse mail ....

J'ai suivi les étapes 1 puis 4,5 puis 7..


Ne ratez pas l'étape 'backup'
Perso , j'ai un script qui stoppe Immich , sauvegarde l'emplacement de stockage de Immich avec rclone , puis ma bibliothèque externe , puis relance Immich si précédemment démarré .

Code:
#!/bin/sh
#
echo "================ status IMMICH"
cd /share/Syst_interne/Immich
NBUP=$(docker-compose ps |grep ' Up '|wc -l)
case $NBUP in
        4)
                echo "================ ARRET I
MMICH"
                cd /share/Syst_interne/Immich
                docker-compose down || exit 12
        ;;
        0)      echo "IMMICH deja stoppe"
        ;;
        *)
                echo "Erreur Immich : $NBUP"
        ;;
esac

#
cd /share/Rclone
for SHRE in Syst_interne M_priv
do
        echo "=========================== svg
$SHRE"
        rclone -v sync /share/$SHRE/ rembckp:$SHRE --exclude .stversions/** --exclude
 .mscbackup/**
        RC=$?
        echo "=========================== FIN
$SHRE , RC=$RC"
done

#
if [ $NBUP -eq 4 ]
then
        echo "================ RELANCE IMMICH"
        cd /share/Syst_interne/Immich
        docker-compose up -d || exit 12
fi


L'étape suivante consiste à déclarer sa bibliothèque externe dans Immich.
Ca se passe dans le menu Administration==> bibliothèque externe .
Ma bibliothèque a pour chemin 'm_priv' à rapprocher de ce qui a été rajouté dans docker-compose.yml.

Après quoi , on peut vérifier dans 'tâches' comment Immich procède pour calculer tout ce qu'il trouve dans votre bibliothèque .
Sur mon AS6602T , il lui a fallu 3 jours et 30Go pour créer les vignettes , reencoder les vidéos avec le réglage par défaut , trouver les visages et les regrouper ( 18000 photos, 400 videos).

Pour profiter de Immich partout , j'ai créé une entrée dans le reverse proxy natif de mon NAS , pour profiter de la conversion en https , du certificat qui valide le site Web du NAS , et de la protection d'ADM Defender.


Enjoy :)
 
bonjour
8 jours après la création du tuto , ( installé le 22 septembre ) , 2 MAJ plus tard qui ont apporté leur lot de nouveautés, j'ai modifié le paramétrage de rendu video : forcer Immich à recalculer toutes les videos en h265 . ça a pris une semaine.

J'ai également désactivé le tag "ro" de la bibliothèque externe : Depuis Immich , on peut maintenant changer les dates et les localisation des fichiers. ça se traduit par l'ajout de fichiers xmp dans la bibliotheque externe... ==> https://docs.immich.app/features/xmp-sidecars/
 
  • J'aime
Réactions: Dami1 et MilesTEG
Merci pour le suivi 😊
J’ai ajouter [Tuto] au titre tu sujet pour le distinguer dans les listes de nouvelles réponses 😊