Aller au contenu

[TUTO] Piwigo une alternative à Photo Station


Charles 69

Messages recommandés

Préambule : 

Utilisateur de PHOTO STATION depuis de nombreuses années, j'ai constaté et regretté sa disparition avec l'arrivée de DSM 7.

Actuellement j'ai installé mon 'ancien' PHOTO STATION sur un DSM Virtuel en version 6.2 pour assurer la continuité de mes partages.

Néanmoins force est de constater que malgré de très nombreuse demandes de ses clients SYNOLOGY persiste à ne pas vouloir réimplanter PHOTO STATION dans DSM7, et le développement de SYNOLOGY PHOTO va certainement se poursuivre avec d'autres objectifs, qui sont en résumé de cloner GOOGLE PHOTO.

A noter les publicités insistantes pour SYNOLOGY PHOTOS sur les liens de partage de documents ...

C'est pourquoi j'ai testé pas mal de solutions alternatives de partage de photos sur internet ( PhotoPrism, Libre Photo, Lychee, Photoview etc ..) et finalement après avoir pas mal galéré pour l'installer, j'ai trouvé les fonctionnalités de Piwigo très intéressantes, proches de celles de PHOTO STATION, voire mieux puisque l'on peut enfin avoir des Albums et des sous-albums imbriqués, sans aucune limite.

D'où ce tuto pour installer Piwigo en tant que site web sur un NAS Synology pour ceux qui ont l'envie de voir par eux mêmes ce qu'il en est. ( Il existe aussi une version Docker que je n'ai jamais réussi à faire fonctionner pleinement )

Après plus de deux mois d'utilisation, 90 000 photos et 1 200 albums, une fluidité sans égal par rapport à Photo Station , il n'y a pas photo 😉

 

[TUTO] INSTALLER PIWIGO SUR UN NAS SYNOLOGY – DSM7

Installation de Piwigo sur un NAS Synology pour gérer la publication des photos et vidéos situées dans un ou plusieurs répertoires partagés.

Les photos sont intégrées à piwigo par la méthode de synchronisation, on n’utilise pas la méthode ajouter des photos pour ne pas créer des doublons.

On peut probablement utiliser ‘photos’ mais il y a peut-être des effets de bord si on utilise simultanément Synology Photos.

Le gros plus de Piwigo est de permettre d’afficher des albums physiques ou virtuels, imbriqués de manière illimitée.

 

1          Installation des paquets

Installer les paquets Web Station, Apache HHTP 2.4, PHP7.4, MariaDB 10 et phpMyAdmin.

 

2          Paramétrage des paquets

2.1      Créer avec File Station un répertoire piwigo sous web

2.2      Web Station

Paramètres du langage de script PHP

Créer un profil

Paramètres

Nom du profil : piwigo_php

Version php PHP 7.4

Extensions

Cocher ‘exif’, ‘gd’,’imagick’,’mysqli’,’zip’,’zlib’

Créer un virtual host

Configuration

basé sur le nom

nom d’hôte piwi

(permettra l’accès au site par l’url ‘toto.synology.me/piwi’)

Port 80/443, https coché

Racine du document : /web/piwigo

Serveur principal apache http Server 2.4

Paramètre du langage de script : PHP : piwigo_php

 

2.3      MariaDB

Créer un mot de passe fort, le login étant root

 

2.4      phpMyAdmin

Ouvrir avec root et le mot de passe précédent

Créer un nouvel utilisateur, piwimaria avec un mot de passe fort

(Cocher ‘privilèges globaux tout cocher’)

Créer une base de données, nom : piwigo

(L’installateur piwigo créera les tables ultérieurement)

 

3          Installation de piwigo

Sur le site de Piwigo

https://fr.piwigo.org/obtenir-piwigo

Télécharger le fichier piwigo -13.6.0. zip

Dézipper le fichier zip

Copier l’intégralité du contenu de ‘piwigo’ dans le répertoire /web/piwigo

 

L’adresse du NAS étant 192.168.1.20 saisir dans le navigateur

http://192.168.1.20/piwi ou cliquer sur le raccourci dans Web Station.

On arrive sur la page Piwigo installation

Compléter les champs comme indiqué

image.thumb.png.c87de4e9e0853522b325169651c7e462.png

Cliquer sur ‘Démarrer l’installation’

On arrive sur cet écran :

image.thumb.png.f77bad20090257b2dba31b73bac43ef6.png

Ne cliquer pas sur ajouter des photos !!!

Mais sur ‘je me débrouillerai par moi-même’

L’objectif étant d’accéder aux photos situées dans le NAS sans créer de doublon.

image.png.e412aa47ce1dc7511696e71e336055a3.png

 

 

4          Paramétrage de piwigo

Menu Administration > Plugins

Activer le plugin : LocalFiles Editor

Ce plugin permet de compléter le fichier de configuration de Piwigo d’une manière simple.

Ajouter les lignes suivantes

$conf['picture_ext'] = array('jpg','JPG',’jpeg’,’png’); // pour limiter les extensions à  prendre en compte

$conf['sync_exclude_folders'] = array('@eaDir'); // pour exclure des répertoires

Les répertoires ‘@eaDir’ sont des répertoires cachés propres à Synology.

 

On peut ajouter d’autres répertoires à exclure dans cette liste

Par exemple si on a utilisé Picasa au préalable il faut rajouter ‘.Originals’ et ‘.picasaoriginals’, ou encore ‘raw’ si les raw sont stockés dans des répertoires ‘raw’ de l’arborescence.

 

Activer aussi le plugin ‘Admin Tools’ qui ajoutera des raccourcis utiles pour administrer le site.

 

5          Vérification de la configuration

Menu Administration > Outils > Maintenance : Environnement

On peut vérifier que PHP et MySQL, ainsi que la bibliothèque graphique ImageMagick sont correctement installés.

image.png.3132696536b7a9aab84f0a75bb0f6ab6.png

 

 

 

6          Synchronisation avec le ou les répertoires contenant les photos

 

Pour pouvoir lier Piwigo aux répertoires de photos, il faut d’abord donner des droits d’accès aux dossiers :

 

-          En lecture pour le groupe SYSTEM sur les répertoires photos

 

-          En lecture et écriture pour le groupe SYSTEM sur les répertoires :

./piwigo/_data

./piwigo/galleries

./piwigo/plugins

./piwigo/themes

Normalement on devrait pouvoir utiliser le ’Gestionnaire des sites’ pour créer des liens sur les répertoires où se trouvent les photos.

Mais en pratique cette méthode occasionne de nombreux dysfonctionnements, en tout cas jusqu’à la version 13.6.0.

La méthode avec le ‘Gestionnaire des sites’, ainsi que la description des dysfonctionnements, sont décrites en annexe pour ceux qui veulent tester.

 

Pour éviter ces dysfonctionnements il suffit de créer des liens symboliques sur le NAS, et obtenir un fonctionnement correct de Piwigo.

 

Avertissement : Maintenant on va entrer dans les entrailles du NAS, il faut être prudent car on peut gravement endommager le NAS en faisant une fausse manipulation.

 

Cette solution nécessite de se connecter au NAS en SSH

Il faut au préalable autoriser l’accès au NAS en SSH, dans le panneau de configuration :

‘Terminal & SNMP’ > Terminal : cocher ‘activer le service SSH, par sécurité modifier le port SSH par défaut.

 

On peut accéder au NAS en SSH avec le logiciel Putty  ( https://www.putty.org )

 image.thumb.png.3f2bed8fc3f389b44384c1959996ae36.png

 

 On arrive sur cette fenêtre

 image.png.bef87596b79e7d8ff99ed0ff3735242a.png

 

 Saisir votre login et mot de passe

Login as: ADMIN

ADMIN@192.168.1.20's password:

 Synology strongly advises you not to run commands as the root user, who has

the highest privileges on the system. Doing so may cause major damages

 to the system. Please note that if you choose to proceed, all consequences are

at your own risk.

 Could not chdir to home directory /var/services/homes/ADMIN: No such file or directory

ADMIN@Mon_NAS:/$

Ensuite on passe en mode sudo (super utilisateur)

ADMIN@Mon_NAS:/$ sudo -i

Password:

root@Mon_NAS:~#

Se positionner dans le répertoire ‘galleries’ de piwigo

root@Mon_NAS:~# cd /volume1/web/piwigo/galleries

root@Mon_NAS:/volume1/web/piwigo/galleries#

 Pour faire un lien symbolique ‘nom_du_lien’ sur un répertoire ‘repertoire_cible’ la syntaxe est  :

          cible                     nom du lien  

 ln -s repertoire_cible’ ‘nom_du lien’

root@Robert:/volume1/web/piwigo/galleries# ln -s /volume1/photo_test lien_photo_test

 On peut créer plusieurs liens symboliques.

 Quand on fait un dir dans le répertoire ‘galleries’ les liens symboliques s’affichent en cyan, sous la forme :

‘nom_du_lien’ -> ‘repertoire_cible’

 image.thumb.png.340500a0807ec0605cb0a114cc305416.png

Pour supprimer un lien symbolique la syntaxe est :

unlink nom_du lien

 

Pour avoir la liste de tous les liens symboliques se placer à la racine et saisir :

find . -type 1

 

Quand tous les liens sont créés, quitter Putty.

Revenir dans l’application Piwigo, et lancer

Administration > Outils > Synchroniser : synchronisation (./galleries)

  

7          La syntaxe des noms des répertoires et des fichiers

Le manuel de Piwigo préconise de n’utiliser ni espace, ni caractères accentués dans les noms des répertoires et des fichiers.

On peut passer outre à ces recommandations en ajoutant avec le plugin LocalFiles Editor :

$conf['sync_chars_regex'] = '/^[a-zA-Z0-9é\'\è~àâ%&êñ!ûëçïÁÂÀô`‘’()-_. ]+$/';

(Merci à k5 de piwigo.org pour l’info)

Ceci autorise dans les noms de répertoires et des fichiers photo les caractères accentués et les espaces. (Il y a un espace juste avant le ] )

J’utilise cette fonctionnalité, et à ce jour avec 90000 photos et 1200 albums ça marche, à l’exception de l’apostrophe que j’ai dû supprimer de quelques noms de répertoire.

Si la présentation de la galerie n’est pas celle attendue on peut toujours supprimer le lien symbolique, sans que les répertoires et les photos originales ne soient affectées, et faire de nouveaux essais.

 

8          Le classement des photos, la structure des répertoires et les albums

 

Lorsque l’on active la synchronisation de ‘galleries’, Piwigo va parcourir les liens symboliques créés dans ‘galleries’ et pour chaque répertoire il va créer (ou mettre à jour) automatiquement un album et créer des miniatures pour chaque photo.

C’est donc la manière dont on a classé les photos qui va conditionner la création des albums.

Personnellement mes photos sont classées par date, en deux catégories (photos numériques et scans) selon le schéma suivant :

NAS

  |

  |__ Mes Photos

  |         |__ photo

  |         |           |__ 2000-2009

  |         |                       |__ 2000

  |         |                      

  |         |                       |__ 2009

  |         |          

  |         |           |__ 2010-2019

  |         |          

  |         |           |__ 2020-2025

  |         |

  |         |__ scan

  |                     |__ 1920-1949

  |                     |__ 1950-1979

  |                     |__ 1980-1989

  |                     |__ 1990-1999

  |

  |__ Mes Vidéos   

  |

  |__ web

            |__ piwigo

 

C’est la manière dont sont définis les liens symboliques qui va déterminer l’arborescence des albums

                                   

Exemple 1

Lien_photo -> /volume1/Mes Photos/photo

Va créer 3 albums de niveau 1 ( 2000-2009, 2010-2019, 2020-2025 )

Lien_scan -> /volume1/Mes Photos/scan

Va créer 4 albums de niveau 1 ( 1920-1949, 1950-1979, 1980-1989, 1990-1999 )

Au final ces 2 liens vont créer 7 albums de niveau 1 et tous les albums correspondants aux sous-répertoires.

 

Exemple 2

Lien_photo -> /volume1/Mes Photos

Va créer 2 albums de niveau 1 ( photo, scan ) et tous les albums correspondants aux sous-répertoires.

 

Exclusion de répertoires ( plugin LocalFiles Editor)

Avec la ligne :

$conf['sync_exclude_folders'] = array('@eaDir',’raw’,’edition’);

On va exclure les répertoires ‘raw’ et ‘edition’ ; à compléter avec tout autre répertoire que l’on ne souhaite pas voir comme album.

 

Pour lancer une synchronisation :
Administration > Outils > Synchroniser : synchronisation ./galleries
 

Les liens entre les photos sur le NAS et piwigo étant définis, on peut ensuite réaliser des albums selon les thèmes voulus (voyages, famille, portrait etc … ) avec le plugin ‘SmartAlbums’ en utilisant les ‘tags’ des photos.  (merci à mistic100 pour ce plugin !! )

A noter : pour que l’album apparaisse la première fois, il faut définir une photo ‘représentante’ pour l’album.

 

Pour la gestion des ‘tags’ j’utilise le logiciel open source DIGIKAM ( https://www.digikam.org ) qui permet de gérer les tags de manière hiérarchique, et surtout d’écrire les métadonnées dans les photos.

Aussi si on change de logiciel de présentation, ou bien en cas de problème avec la base de données de piwigo , les tags sont toujours là !!

On peut gérer la hiérarchie comme on le souhaite, avec la possibilité de sélectionner ou non chaque niveau.

 

Album voyage

                        Pays 1

                                               Pays1 ville 1

                                               Pays1 ville 2

                        Pays 2

 

Faune

            Oiseau

                        Mésange

                                                Mésange charbonnière

                                                Mésange bleue

                                                Chardonneret

            Chamois

 

On peut aussi renommer, supprimer ou fusionner les tags très facilement.

DIGIKAM intègre également un module de reconnaissance faciale.

DIGIKAM intègre aussi un éditeur photo très sommaire pour les jpg

Pour l’édition des raw j’utilise le logiciel open source DARKTABLE ( https://www.darktable.org/install/ )

 

9          Inclure des vidéos mp4 dans les galeries de photos

 

Piwigo ne lit pas nativement les vidéos, il faut installer le plugin ‘VideoJS’

Créer un lien symbolique entre les vidéos du nas et pwigo.

Lien_video -> /volume1/Mes Vidéos

 

Activer le plugin VideoJS   (il n'est pas nécessaire de le configurer)
 

Lancer une synchronisation :
Administration > Outils > Synchroniser : synchronisation ./galleries
Les vidéos vont être reconnues comme des photos, et un album 'Mes Vidéos' va être créé.

Ensuite on peut associer les vidéos aux albums souhaités de la manière suivante.
Lancer la commande :
Administration > Photos > Gestion par lot : All videos > sélectionner une ou plusieurs vidéos > Action : Associer à l'album : choisir un album > Appliquer l'action

La ou les vidéos choisies vont apparaitre dans l'album sélectionné.
Elle seront représentées par une icône de pellicule de cinéma.
L'icône représentant la pellicule se nomme mp4.png et se trouve dans ./piwigo/plugins/piwigo-videojs/mimetypes, on peut la remplacer par ce que l'on veut.
 

Si l’on souhaite afficher une image de la vidéo en lieu et place de l’icône, il faut en extraire une image (avec l’appareil photo dans vlc par exemple), il faut donner à ce fichier jpg ou png le même nom que la vidéo, et placer ce fichier dans un répertoire nommé ‘pwg_representative’ qui sera positionné sous le répertoire contenant la vidéo.
 

Un clic sur l'icône et c'est partie pour la séance de cinéma ... (testé sur Firefox, Edge, Chrome et Opéra)

 

10       Groupe, Utilisateurs et Permissions

Avant de publier votre site, créer des groupes avec des utilisateurs pour définir qui verra quoi.

A noter que le webmaster, le 1er utilisateur créé ne voit pas les albums privés.

Pour qu’il puisse les voir pensez à créer un groupe qui voit tout et mettez le dedans !!

En ce qui me concerne les albums issus des liens symboliques sont privés à usage de l’administrateur, et les albums créés avec ‘SmartAlbums’ sont soit Publics, soit Privés selon les cas.

https://fr.piwigo.org/doc/doku.php#maitriser_sa_galerie

 

8          Personnalisation de l’interface

Lire le mode d’emploi de piwigo.

https://fr.piwigo.org/doc/doku.php

On trouve aussi beaucoup d’info sur le forum de piwigo.fr

https://fr.piwigo.org/forum/index.php

 

Un grand merci à ceux qui développent et maintiennent Piwigo !!!

 

DARKTABLE + DIGIKAM + PIWIGO = le trio gagnant !!!

________________________________________________________________________________________

 

Alternative aux liens symboliques : LE GESTIONNAIRE DE SITES

Au lieu de créer des liens symboliques dans le NAS, on peut créer des ‘sites’ qui pointent sur les répertoires du NAS.

Donner la permission ’lecture’ au groupe ‘SYSTEM’ sur ces répertoires.

 

Menu Administration > Outils > Synchroniser

Onglet ‘Gestionnaire de sites’ > ‘créer un nouveau site’

image.png.73a01860af22fb8d790a4603c80b15f2.png

 

 Avec la structure de dossier suivante sur le NAS

Mon_Nas

     |_____ xxx

     |_____ docker

     |_____ MesPhotos

     |               |____ Chrono

     |               |____ Scan

     |_____ photo

     |_____MesVidéos

     |_____ web

                     |____ xyz

                     |____ piwigo

 

Le répertoire de référence se situe sous ‘./piwigo’.

 

Pour pointer sur ‘MesPhotos’ la syntaxe sera :

../../MesPhotos

 

Pour pointer sur Scan uniquement ce sera :

../../MesPhotos/Scan

 

On peut ajouter autant de « sites » que l’on veut, selon la façon dont on souhaite organiser l’affichage des albums dans Piwigo

 

Ensuite on synchronise le répertoire choisi avec piwigo.

 

image.thumb.png.80d065aaa2e203207bc5b234c5319587.png

 

 

Et si le résultat ne convient pas on peut ‘supprimer’ le site et recommencer.

Les photos dans le NAS ne sont jamais supprimées.

 

Le système serait parfait mais il ne fonctionne pas correctement (version 13.6.0)

La génération des vignettes se fait ou pas …

Si on lance la régénération des miniatures pour une sélection spécifique de photos avec la commande :
Administration > Photos > Gestion par lot, mode global : sélectionner des photos > Action : Générer les tailles multiples des miniatures 
la plupart du temps on obtient l'erreur :
'xxx photos ne peuvent pas être régénérées' ou ‘ photos can not be regenerated’

On ne peut pas afficher l’image en taille originale

On obtient systématiquement une erreur 404

 

_______________________________________________________________________________________

 

 

 

PS : n’hésitez pas à commenter, et à critiquer ce tuto, je le mettrai à jour si besoin.

Première version 14/01/2023

V2 - Mise à jour 02/02/2023

V3 – Mise à jour 06/02/2023

V4 – Mise à jour 17/03/2023

V5 – Mise à jour 16/04/2023

Lien vers le commentaire
Partager sur d’autres sites

Merci pour ce tuto qui est bien construit. Je ne connais pas Piwigo, aussi il m'est difficile de me prononcer sur son intérêt.

Ceci étant dit, le dernier paragraphe sur la génération des vignettes n'incite pas vraiment à se lancer.

Une remarque concernant l'accès SSH : si vous avez suivi les conseils du tuto sur la sécurisation de nos NAS (section Tutoriels) ainsi que les recommandations de Synology, le compte "admin" est désactivé. Pour l'accès SSH, il faut alors utiliser les identifiants du compte administrateur actif qui permet d'accéder à DSM.

Lien vers le commentaire
Partager sur d’autres sites

  • 3 mois après...

Bonjour,

Je regarde depuis quelque temps maintenant ton tuto, et j'ai décider de me lancer car la lenteur de Synology photos sur la lecture des dossiers m'énerve de plus en plus.

Une des limitation que je trouvais dans Piwigo était la limitation des caractères à utiliser.

J'ai bien vu que tu indiquais un moyen de passer outre "$conf['sync_chars_regex'] = '/^[a-zA-Z0-9é\'\è~àâ%&êñ!ûëçïÁÂÀô`‘’()-_. ]+$/';" mais je ne sais pas dans quelle section positionner cette fonctionnalité dans la configuration du pluging Local Files Editor.

Pour info le l'ai mise dans "misc" mais j'ai toujours l'alerte:

  • PWG-UPDATE-1: Le nom des répertoires et des fichiers ne doit être constitué que de lettres, de chiffres, de "-", "_" et ".""

Merci d'avance de ton aide

Lien vers le commentaire
Partager sur d’autres sites

Le 16/04/2023 à 16:46, Charles 69 a dit :

Version php PHP 7.4

Je me suis dit y’a tien ça pourrait être une bonne idée d’essayer une version web de piwigo , car je n’ai moi aussi jamais réussi a faire fonctionner la version docker,..

mais la version de php nécessaire me bloque…

7.4 !

alors que cette version est déclassée et considérée comme vulnérable… 

ca ne fonctionne pas avec la dernière version de php du syno 8.1 (si elle est dispo ) ?

 

Lien vers le commentaire
Partager sur d’autres sites

  • 1 mois après...

@KSCM

Bonsoir,

Mes excuse pour la réponse tardive.

Dans Piwigo > Administration > Plugin > Local File Editor configuration

Dans la page qui s'ouvre coller n'importe où :

// permet les caractères accentués et l'espace ( juste avant le \ ) dans les noms de fichiers 
// pour l'apostrophe ça ne marche pas
$conf['sync_chars_regex'] = '/^[a-zA-Z0-9éè~àâ%&êñ!ûëçïÁÂÀô`‘’()-_. \']+$/';

et enregistrer

Ensuite synchroniser et normalement les accents et espace des noms de fichiers et répertoires sont acceptés.

 

@MilesTEG1

Mes excuse pour la réponse tardive.

Sur le forum Piwigo des utilisateurs sont passés à PHP 8.1 , mais apparemment il y a encore pas mal de warning ( function deprecated ).

De plus j'utilise des plugins qui n'ont pas forcément été mis à jour.

Pour moi ça fonctionne très bien en 7.4, je préfère attendre . 

Rien ne t'empêche de tester avec PHP 7.4 pour voir si l'application te convient .

Lien vers le commentaire
Partager sur d’autres sites

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.