Asustor Immich : mon installation docker sur Asustor AS6602T

shaks2022

Maître Jedi
Membre Confirmé
22 Février 2022
674
197
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 :)
 
  • J'aime
Réactions: Asmodée et MilesTEG