Immich : sauvegarder ses photos sans les confier à Google
Un clone open-source de Google Photos avec reconnaissance faciale et recherche par contenu, qui tourne sur votre NAS ou votre VPS.
Google Photos a arrêté le stockage illimité gratuit en 2021. Depuis, chaque photo prise consomme le quota Google One, partagé avec Gmail et Drive. Une famille qui prend des photos avec plusieurs téléphones sature vite les 15 Go gratuits, puis paie un abonnement qui grimpe avec les années. Immich remplace ça par un serveur personnel qui fait à peu près tout ce que fait Google Photos.
Immich synchronise automatiquement les photos et vidéos d'un téléphone vers un serveur, en arrière-plan, comme le fait l'app Google Photos. Derrière, il indexe le contenu avec des modèles de machine learning locaux : recherche par texte ("plage", "chien", "coucher de soleil"), reconnaissance et regroupement de visages, extraction de métadonnées EXIF (lieu, appareil, date). Rien de tout ça ne part vers un cloud tiers — l'inférence tourne sur votre propre serveur.
Installation avec Docker Compose
Immich fournit un docker-compose.yml officiel à télécharger plutôt qu'à écrire à la main — la stack comporte plusieurs services qui doivent rester en version synchronisée.
mkdir immich-app && cd immich-app
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.envLe fichier .env définit les chemins de stockage et les identifiants de base :
UPLOAD_LOCATION=./photos
DB_DATA_LOCATION=./postgres
IMMICH_VERSION=release
DB_PASSWORD=un-mot-de-passe-solidedocker compose up -dLa stack lance quatre services : le serveur principal, un worker de traitement ML, Redis pour la queue de jobs, et PostgreSQL avec l'extension pgvector pour la recherche par similarité d'image.
Synchronisation mobile
Les apps officielles Android et iOS se connectent au serveur via son URL et un token API, puis proposent une sauvegarde automatique en arrière-plan — configurable pour ne tourner qu'en wifi, ou inclure les vidéos, exactement comme les réglages Google Photos.
Réglages app Immich :
Serveur : https://photos.mondomaine.fr/api
Sauvegarde automatique : activée
Sur wifi uniquement : activée
Inclure vidéos : activéeUne fois configuré, prendre une photo la fait apparaître sur le serveur en quelques secondes, visible depuis n'importe quel autre appareil connecté au même compte.
Recherche par IA et reconnaissance faciale
Le worker ML tourne les modèles de classification et de détection de visages sur chaque nouvel upload. Résultat : taper "vélo" dans la recherche remonte les photos contenant un vélo, même sans tag manuel. La reconnaissance faciale regroupe automatiquement les photos par personne détectée — il suffit ensuite de nommer un visage une fois pour que tout l'historique se retague.
# docker-compose.yml — service dédié au ML, séparable du reste
immich-machine-learning:
image: ghcr.io/immich-app/immich-machine-learning:release
volumes:
- model-cache:/cache
restart: alwaysSur un serveur sans GPU, l'inférence tourne sur CPU — plus lent sur un gros import initial (plusieurs milliers de photos), mais parfaitement utilisable au quotidien où seules quelques photos arrivent par jour.
Albums partagés et espaces partenaires
Deux comptes Immich peuvent partager un espace "Partner" — chaque photo prise par l'un devient visible dans la bibliothèque combinée de l'autre, sans dupliquer le stockage. Pour un couple ou une famille qui veut une pellicule commune sans fusionner les comptes, c'est directement dans les paramètres, sans app tierce.
Les albums classiques se partagent aussi par lien public, avec ou sans mot de passe, et une date d'expiration optionnelle — utile pour envoyer les photos d'un événement sans créer de compte pour chaque invité.
Immich vs Google Photos vs PhotoPrism
| Critère | Immich | Google Photos | PhotoPrism |
|---|---|---|---|
| Coût | Serveur perso | Gratuit puis abonnement | Serveur perso |
| Reconnaissance faciale | Oui | Oui | Payant (Plus) |
| Sync mobile automatique | Oui | Oui | Non native |
| Recherche par contenu | Oui | Oui | Oui |
| Vie privée | Totale | Traitement chez Google | Totale |
| Maturité du projet | Active, rapide | N/A | Stable |
PhotoPrism est l'alternative directe la plus connue, mais sa synchronisation mobile automatique reste plus limitée — Immich a été conçu dès le départ comme un remplaçant direct de l'app Google Photos, sync incluse, ce qui se sent dans la fluidité de l'expérience mobile.
Stockage et dimensionnement
Le vrai coût d'Immich n'est pas logiciel, c'est le disque. Prévoir large : les photos de téléphone modernes pèsent 3 à 8 Mo chacune, les vidéos 4K beaucoup plus. Un NAS avec RAID ou un VPS avec stockage objet monté (S3-compatible) en complément du disque local évite la mauvaise surprise du disque plein.
# Vérifier l'espace utilisé par la bibliothèque
du -sh ./immich-app/photosSauvegardes
La base PostgreSQL contient tous les métadonnées, tags, visages, albums — la perdre sans backup signifie tout retaguer manuellement même si les fichiers photo survivent.
docker exec immich_postgres pg_dumpall -c -U postgres > immich-db-$(date +%F).sqlLe dossier UPLOAD_LOCATION contient les fichiers originaux — c'est la vraie donnée irremplaçable, à sauvegarder vers un stockage distinct du serveur principal (règle du 3-2-1 : trois copies, deux supports, une hors site).
Immich a mûri vite — d'un projet expérimental à une alternative crédible à Google Photos en quelques années. Sur un serveur qui a déjà Docker et de la place disque, ou en complément d'un espace Nextcloud existant, c'est la pièce qui manquait pour ne plus jamais dépendre d'un quota Google qui grimpe chaque année.