4.7 KiB
title: PhotoPrism created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, photos, photoprism, ai, recognition, gallery, self-hosted] confidence: high contested: false sources: [https://selfh.st/apps/?tag=Photos, https://github.com/photoprism/photoprism]
📸 PhotoPrism
Le serveur de photos IA mature et open source, écrit en Go. Indexation, reconnaissance, recherche full-text dans les photos — le "Swiss Army knife" de la photothèque.
📋 Informations Générales
| Attribut | Valeur |
|---|---|
| Nom | PhotoPrism |
| Slug | app-photoprism |
| Description | Serveur de photos IA, mature, écrit en Go |
| Site officiel | photoprism.app |
| Repository | photoprism/photoprism |
| Stars | 39 756 ⭐ |
| Licence | AGPL-3.0 (Community Edition) |
| Langage principal | Go |
| Catégorie | Photos |
| Tags | [catalogue, photos, photoprism, ai, recognition, gallery, self-hosted] |
📝 Description
PhotoPrism est un des pionniers du secteur (lancé en 2018) et reste l'une des solutions les plus complètes et stables. Contrairement à Immich, il n'a pas (officiellement) d'appli mobile native — il mise sur une webapp progressive (PWA) très aboutie et des apps tierces (PhotoPrism Plus sur iOS, etc.).
Fonctionnalités : indexation automatique (scan de dossiers existants sans copier), reconnaissance faciale (via TensorFlow), classification par scène/objet (modèles NSFW, Places365, ImageNet), recherche full-text dans les métadonnées IPTC/XMP, carte géographique, calendrier, vidéo (transcode FFmpeg), partage public avec lien/mot de passe/expiration, albums, favoris, et webDAV pour accès externe.
Modèle économique : Community Edition (AGPL, gratuite et complète) + PhotoPrism Plus (services payants optionnels : support prioritaire, apps mobiles, hosting). Le code source reste entièrement accessible.
🚀 Installation
Via Docker (recommandé)
# docker-compose.yml
version: "3.8"
services:
photoprism:
image: photoprism/photoprism:latest
container_name: photoprism
restart: unless-stopped
environment:
PHOTOPRISM_ADMIN_PASSWORD: "changeme"
PHOTOPRISM_SITE_URL: "http://localhost:2342/"
PHOTOPRISM_DATABASE_DRIVER: "sqlite"
PHOTOPRISM_STORAGE_PATH: "/photoprism/storage"
PHOTOPRISM_ORIGINALS_PATH: "/photoprism/originals"
PHOTOPRISM_IMPORT_PATH: "/photoprism/import"
volumes:
- ./storage:/photoprism/storage
- /mnt/photos:/photoprism/originals:ro # vos photos en lecture seule
ports:
- 2342:2342
depends_on: [mariadb]
mariadb:
image: mariadb:11
restart: unless-stopped
environment:
MARIADB_ROOT_PASSWORD: "secret"
MARIADB_DATABASE: photoprism
volumes:
- db:/var/lib/mysql
volumes:
db:
MariaDB est optionnelle — SQLite fonctionne très bien pour un usage mono-utilisateur. Pour le multi-utilisateurs, basculer sur MariaDB/Postgres.
Installation manuelle
Possible (binaire Go + FFmpeg + TensorFlow) mais peu documentée — Docker est la voie standard.
⚙️ Configuration
- Hardware : 2-4 vCPU, 4 Go RAM minimum, 8 Go recommandé pour l'indexation initiale.
- Dossiers :
originals(vos photos),import(dossier d'upload temporaire),storage(cache, index DB, thumbnails). - Mode read-only : vous pouvez pointer
originalssur vos fichiers existants sans rien copier — c'est un des gros avantages vs Immich. - Worker tuning :
PHOTOPRISM_WORKERS(nombre de workers d'indexation),PHOTOPRISM_DISABLE_*pour désactiver les modèles ML non désirés. - HTTPS : obligatoire via reverse proxy (Caddy/Traefik) pour utiliser les fonctions de partage.
🔗 Alternatives
- app-immich — Plus moderne, appli mobile native excellente, copie les fichiers
- app-librephotos — Approche similaire avec stack Python
- app-lychee — Beaucoup plus simple, pas d'IA, juste de la galerie
🔒 Sécurité
- Authentification intégrée (utilisateurs locaux), OIDC/LDAP supportés.
- Reverse proxy indispensable en prod (l'app écoute en HTTP par défaut).
- Droits filesystem : le container doit pouvoir lire
originals— attention aux partages NFS/SMB.
📚 Ressources
🔗 Pages Liées
- cat-photos (n'existe pas encore, OK)
- app-immich
- app-lychee
- app-traefik
- recettes-docker-compose
- securisation-home-lab