PhotoPrism
PhotoPrism est une application auto-hébergée pour parcourir, organiser et partager votre propre bibliothèque de photos et vidéos. Elle vise moins à cloner Google Photos qu’à en proposer une alternative qui respecte votre vie privée : elle classe vos images par contenu et par lieu, reconnaît les visages qui reviennent d’une photo à l’autre, et affiche vos voyages sur des cartes du monde hors ligne, sans jamais rien envoyer chez Google, Amazon ou Apple à moins que vous ne le décidiez vous-même.
Licence : le dépôt GitHub est placé sous licence AGPL-3.0, confirmé dans le fichier LICENSE plutôt que supposé à partir d’un badge, avec une clause additionnelle qui restreint l’usage du nom et des visuels de marque PhotoPrism dans vos propres produits. La partie qui surprend, et que la FAQ open source officielle de PhotoPrism annonce sans détour : le tag « latest » par défaut sur Docker Hub n’est pas de l’AGPL pur. Il embarque des extensions compilées réservées aux membres payants sous une licence maison, la Plus License. Pour l’édition Community, purement AGPL, il faut aller chercher le tag « ce ».
En bref : site officiel photoprism.app · GitHub photoprism/photoprism · image Docker photoprism/photoprism (tag « ce » recommandé) · port par défaut 2342 · alternative à Google Photos, Immich et Nextcloud Photos.
Ce que fait vraiment PhotoPrism
PhotoPrism indexe un dossier de photos et de vidéos que vous possédez déjà. C’est pensé pour organiser une bibliothèque existante, pas pour être le premier endroit où votre téléphone déverse sa pellicule. L’outil fait tourner son propre modèle de classification directement sur votre serveur pour étiqueter contenus et scènes, regroupe les visages récurrents pour que vous n’ayez à nommer quelqu’un qu’une seule fois, et affiche des cartes du monde hors ligne calculées à partir des données de localisation de chaque photo. Les fichiers RAW, le HEIF et la plupart des formats vidéo fonctionnent sans conversion manuelle préalable.
- Classification automatique du contenu et des scènes, exécutée en local
- Détection et regroupement de visages, optionnels et entièrement locaux
- Six cartes du monde haute résolution intégrées pour naviguer par lieu
- Prise en charge du RAW, du HEIF et de la vidéo sans outil de conversion séparé
- Synchronisation WebDAV, compatible avec les clients de sauvegarde que vous utilisez déjà
- Recherche par filtres qui réduit vraiment les résultats, plus des albums et des liens partageables
Ce qu’il faut savoir avant de lancer l’image Docker
Le code source sur GitHub est AGPL-3.0, un point qui n’est pas discutable. Ce qui l’est davantage, c’est ce que Docker Hub distribue réellement sous deux tags différents : « latest », celui que vous récupérez par défaut si vous ne précisez rien, embarque des fonctionnalités réservées aux membres sous la Plus License de PhotoPrism ; « ce », pour Community Edition, ne contient que le code AGPL, rien de plus. C’est le genre de détail qui passe totalement inaperçu si vous copiez-collez un tutoriel Docker sans lire au-delà de la première ligne.
Les deux tags tournent gratuitement. La différence est une question de licence, pas de prix : « ce » est 100% AGPL sans rien ajouté, tandis que « latest » embarque des fonctionnalités réservées aux membres sous la licence maison Plus de PhotoPrism, inactives tant que vous n’avez pas payé un abonnement. Si la pureté de la licence compte pour vous, restez sur « ce ».
Installer PhotoPrism avec Docker
PhotoPrism publie un fichier Compose prêt à l’emploi pour Linux, macOS, Windows, Raspberry Pi et Podman. MariaDB est inclus par défaut, et mieux vaut le garder : PhotoPrism plafonne les installations SQLite à quatre workers d’indexation, donc MariaDB devient le bon choix dès que votre bibliothèque dépasse quelques milliers de photos. Une version simplifiée du fichier Compose ressemble à ceci :
services:
photoprism:
image: photoprism/photoprism:ce
restart: unless-stopped
ports:
- "2342:2342"
environment:
PHOTOPRISM_ADMIN_PASSWORD: "changeme123"
PHOTOPRISM_SITE_URL: "http://localhost:2342/"
PHOTOPRISM_DATABASE_DRIVER: "mysql"
PHOTOPRISM_DATABASE_SERVER: "mariadb:3306"
volumes:
- "/mnt/photos:/photoprism/originals"
- "./storage:/photoprism/storage"
depends_on:
- mariadb
mariadb:
image: mariadb:11
restart: unless-stopped
command: mariadbd --innodb-buffer-pool-size=512M
volumes:
- database:/var/lib/mysql
volumes:
database:
docker compose up -d
docker compose exec photoprism photoprism faces index
Matériel : la documentation officielle de PhotoPrism recommande au moins 4 Go de swap sur l’hôte, surtout avant d’indexer des photos RAW ou des panoramas haute résolution. L’indexeur peut faire grimper la consommation mémoire bien au-delà de ce qu’il utilise au repos, et manquer de mémoire en plein milieu d’une indexation est assez fréquent pour avoir sa propre entrée dans la documentation de dépannage du projet.
Avant de commencer : Docker et Compose installés, un vrai chemin de volume (pas un volume anonyme) pour /photoprism/originals pointant vers votre dossier de photos existant, et un PHOTOPRISM_ADMIN_PASSWORD d’au moins 8 caractères. Il n’y a pas de mot de passe par défaut de secours.
- Téléchargez le
compose.yamlofficiel pour votre plateforme et ajustez les chemins de volume. - Pointez
/photoprism/originalsvers le dossier qui contient déjà vos photos et vidéos. - Définissez un
PHOTOPRISM_ADMIN_PASSWORDrobuste. - Lancez
docker compose up -det ouvrez le port 2342 dans votre navigateur. - Connectez-vous en tant qu’
admin, puis démarrez l’indexation depuis l’onglet Bibliothèque.
PhotoPrism face à Immich
Les deux sont des alternatives auto-hébergées et assistées par IA à Google Photos, et on les compare tellement souvent qu’il vaut mieux traiter la question de front plutôt que de l’esquiver. Notre fiche Immich détaille sa propre stack Docker à quatre conteneurs, pensée pour la sauvegarde mobile automatique en continu.
| Critère | PhotoPrism | Immich |
|---|---|---|
| Rôle principal | Organiser une bibliothèque déjà sur disque | Sauvegarde automatique continue depuis votre téléphone |
| Stack Docker par défaut | 2 conteneurs (app + MariaDB) | 4 conteneurs (serveur, ML, Postgres, Redis) |
| Application mobile | Interface web adaptée mobile, pas d’appli de sauvegarde dédiée | Application mobile dédiée avec envoi automatique en arrière-plan |
| Licence | AGPL-3.0 (cœur), Plus License sur le tag Docker par défaut | AGPL-3.0 |
| Reconnaissance faciale | Oui, en local | Oui, en local |
| Notre note de difficulté | Medium | Avancé |
Si la priorité est une sauvegarde continue depuis votre téléphone avec le minimum de gestion manuelle, Immich est construit précisément pour ça. Si vous organisez une collection de photos qui vit déjà sur un disque quelque part, la stack plus légère de PhotoPrism vous y amène avec moins de choses à maintenir.
Avantages et inconvénients
- Vraie reconnaissance faciale et classification de contenu, exécutées entièrement sur votre propre matériel
- Gère nativement le RAW et le HEIF, sans étape de conversion séparée
- Cartes du monde hors ligne et synchronisation WebDAV compatibles avec des clients que vous utilisez probablement déjà
- L’édition Community est réellement utilisable, pas un essai bridé déguisé en logiciel libre
- La distinction entre la Plus License et le tag « ce » piège quiconque saute la FAQ
- Indexer des bibliothèques RAW et vidéo est réellement gourmand en CPU et en RAM
- Pas d’application mobile dédiée pour la sauvegarde automatique en arrière-plan, contrairement à Immich
- Certaines fonctionnalités récentes restent réservées aux membres alors que le code correspondant est là, en open source
Alternatives
Si vous faites déjà tourner Nextcloud pour du stockage de fichiers, son application Photos intégrée couvre la consultation basique d’une galerie sans ajouter un service de plus à maintenir. Ce qu’elle ne fait pas, c’est la reconnaissance faciale ou la classification de contenu : exactement le vide que PhotoPrism et Immich viennent combler.
FAQ
PhotoPrism est-il gratuit ?
Oui. L’édition Community est pleinement utilisable sans rien payer. Un abonnement payant ajoute des fonctionnalités et du support en plus ; il ne verrouille pas l’application de base derrière un paywall.
L’indexation envoie-t-elle mes photos quelque part ?
Non. La classification et la reconnaissance faciale tournent sur votre propre serveur. Rien n’est envoyé à un tiers, sauf si vous configurez vous-même un partage.
Puis-je changer d’outil plus tard ?
Vos fichiers restent de simples fichiers dans le dossier que vous avez monté. PhotoPrism n’enferme pas les originaux dans un conteneur propriétaire : partir plus tard revient simplement à copier un dossier.
PhotoPrism ou Immich, comment choisir ?
Tout dépend de votre point de départ. Si vos photos vivent déjà sur un disque et que vous voulez les organiser, PhotoPrism et sa stack à deux conteneurs suffisent largement. Si vous partez d’un téléphone qui doit sauvegarder automatiquement en continu, la stack plus lourde d’Immich, quatre conteneurs contre deux, est construite pour ça dès le départ.
La documentation officielle vit sur docs.photoprism.app, le code source et la licence sont sur GitHub, et une démo en ligne tourne sur try.photoprism.app si vous voulez tester avant d’y consacrer un serveur. Pour le choix du matériel, notre guide auto-hébergement pour monter votre premier homelab couvre l’essentiel.