Docker Stockage

Immich : remplacer Google Photos par son propre serveur de photos

21/04/2026 · 5 min de lecture

Pendant des années, mes photos étaient sur Synology Photos : les photos de l’appareil photo sur le NAS, les screenshots Windows dans un dossier partagé, les photos du téléphone synchronisées automatiquement. Ça marchait. Mais ça manquait de tout ce qu’on attend aujourd’hui d’une galerie moderne : reconnaissance faciale, recherche par IA, timeline fluide, album partagé avec la famille.

Immich répond à tout ça, en self-hosted, avec une interface qui rivalise avec les meilleures apps cloud. Voilà comment je l’ai mis en place sur mon homelab.

[SCREENSHOT: Immich — interface web principale avec la bibliothèque de photos organisée par date et les albums]

Pourquoi Immich

Il existe plusieurs alternatives self-hosted à Google Photos : PhotoPrism, Piwigo, Nextcloud Photos. J’ai essayé les trois. Immich s’en distingue sur un point crucial : l’application mobile. L’app iOS d’Immich est aussi bonne que Google Photos — backup automatique en arrière-plan, interface rapide, reconnaissance faciale, albums partagés. C’est le point qui a tué les autres alternatives pour moi.

Autres atouts :

  • Reconnaissance faciale locale (machine learning embarqué)
  • Recherche intelligente : « plage 2023 », « anniversaire Emma », « chien » — ça fonctionne vraiment
  • Timeline identique à Google Photos
  • Albums partagés avec la famille
  • Mémoires (« il y a 3 ans… »)

Architecture sur mon homelab

Immich tourne sur le nœud 3 (Minisforum MS-01) car c’est lui qui a le plus de RAM disponible. Le machine learning (reconnaissance faciale, CLIP pour la recherche) est CPU-intensif au premier index — prévoir 30-60 minutes pour 80 000 photos.

Stockage :

  • Photos originales : NAS UNAS Pro via NFS (SFP+ 10GbE) — les originaux ne quittent jamais le NAS
  • Base de données PostgreSQL : SSD NVMe local pour les performances
  • Cache et thumbnails : SSD NVMe local

Installation via Dockge

Immich propose un compose officiel. Récupère-le depuis la doc officielle (immich.app/docs) — il est mis à jour régulièrement avec les changements de version.

Structure minimale

services:
  immich-server:
    image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release}
    container_name: immich_server
    restart: unless-stopped
    ports:
      - "2283:2283"
    volumes:
      - ${UPLOAD_LOCATION}:/usr/src/app/upload
      - /etc/localtime:/etc/localtime:ro
    env_file:
      - .env
    depends_on:
      - redis
      - database

  immich-machine-learning:
    image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release}
    container_name: immich_machine_learning
    volumes:
      - model-cache:/cache
    restart: unless-stopped

  redis:
    image: redis:6.2-alpine
    container_name: immich_redis
    restart: unless-stopped

  database:
    image: tensorchord/pgvecto-rs:pg14-v0.2.0  # PostgreSQL avec extension vectorielle pour la recherche IA
    container_name: immich_postgres
    restart: unless-stopped
    environment:
      POSTGRES_PASSWORD: ${DB_PASSWORD}
      POSTGRES_USER: ${DB_USERNAME}
      POSTGRES_DB: ${DB_DATABASE_NAME}
    volumes:
      - pgdata:/var/lib/postgresql/data

volumes:
  pgdata:
  model-cache:

Le fichier .env

UPLOAD_LOCATION=/mnt/nas/immich    # point de montage NFS vers le NAS
DB_PASSWORD=motdepassecomplexe
DB_USERNAME=postgres
DB_DATABASE_NAME=immich
[SCREENSHOT: Immich — section Administration avec les statistiques de la bibliothèque (nombre de photos, vidéos, espace utilisé)]

Migration depuis Google Photos

La migration se fait en deux étapes :

Export Google Takeout

Google Photos > Paramètres > Télécharger tes données (Google Takeout). Sélectionne uniquement Google Photos. Télécharge les archives ZIP sur ton NAS.

Import dans Immich

Immich dispose d’un outil CLI pour importer depuis Takeout en préservant les dates et métadonnées :

docker run --rm -it   -v /mnt/nas/takeout:/import   ghcr.io/immich-app/immich-cli:latest   upload --recursive /import   --server http://192.168.1.40:2283   --key <API_KEY>

L’API key se génère dans Immich : Settings > API Keys. Le CLI gère les doublons automatiquement — tu peux relancer l’import si ça s’arrête à mi-chemin.

Application mobile

Installe l’app Immich (iOS/Android), configure l’URL de ton serveur (local ou via NPM en HTTPS), et active le backup automatique. Sur iOS, Immich utilise les APIs de backup en arrière-plan — les nouvelles photos sont uploadées automatiquement quand tu es sur le Wi-Fi.

Pour l’accès depuis l’extérieur, j’expose Immich via Nginx Proxy Manager sur https://photos.mondomaine.fr.

[SCREENSHOT: Application mobile Immich — timeline de photos avec les albums en bas, vue identique à Google Photos]

Backup Immich

Immich gère les originaux et la base de données de façon séparée. Mon setup de backup :

  • Photos originales : stockées sur le NAS, sauvegardées sur le Synology et le disque off-site via la stratégie 3-2-1
  • Base PostgreSQL : dump quotidien via un script cron + heartbeat Uptime Kuma
#!/bin/bash
docker exec immich_postgres pg_dumpall -U postgres | gzip > /mnt/backup/immich_db_$(date +%Y%m%d).sql.gz
# Heartbeat Uptime Kuma
curl -s "http://uptime-kuma:3001/api/push/TOKEN?status=up&msg=OK"

Les limites

Immich est un projet actif avec des mises à jour fréquentes — les versions ne sont pas rétrocompatibles. Le projet le dit explicitement : ne pas utiliser :latest sans lire les release notes. Je fixe la version dans le .env et je lis le changelog avant chaque update.

💡 Le petit truc en plus

Configure un utilisateur « famille » en plus de ton admin. Donne-lui accès uniquement aux albums partagés, pas à ta bibliothèque complète. Immich gère les partages par album avec des liens publics ou des accès par compte. Sur mon setup, ma femme a son propre compte avec sa bibliothèque, et nous avons des albums partagés pour les photos communes. Deux bibliothèques distinctes, zéro mélange.

👉 Pour aller plus loin : sauvegarder son homelab avec PBS, Nginx Proxy Manager pour le HTTPS, et le setup homelab complet.

Immich au quotidien

Depuis la migration, toutes mes photos arrivent automatiquement dans Immich depuis le téléphone. La reconnaissance faciale a identifié les personnes qui apparaissent le plus, la recherche IA retrouve « vacances montagne 2023 » en quelques secondes.

Point d’attention : Immich évolue vite. Lis toujours le changelog avant une mise à jour et fais un snapshot PBS avant. Les nouveautés valent la contrainte.

Vous avez aimé cet article ?

Rejoignez la newsletter : nouveaux articles & contenu exclusif directement par mail, sans pubs.

Je m'abonne

Pour aller plus loin