Ce guide suit la documentation d'installation d'Immich, relue le 14 octobre 2026, pour la version 3.3.1, la dernière publiée sur le dépôt du projet. Il faut Docker Engine et son extension Compose : la commande docker compose, pas l'ancien docker-compose, que le projet ne prend plus en charge.
Ce qu'il faut comme serveur
La page des prérequis fixe le minimum :
| Ressource | Minimum | Conseillé |
|---|---|---|
| Mémoire | 6 Go (4 Go sans apprentissage automatique) | 8 Go |
| Processeur | 2 cœurs | 4 cœurs |
| Base de données | 1 à 3 Go | sur un disque local SSD, jamais sur un partage réseau |
Prévoyez la place pour la photothèque elle-même : les vignettes et les vidéos converties ajoutent en moyenne 10 à 20 % à son volume, d'après la même page.
Installer Immich
- Créez un dossier et placez-vous dedans :
mkdir ~/immich-app && cd ~/immich-app - Téléchargez le fichier compose et le modèle de configuration de la dernière version :
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.env
- Ouvrez
.envet réglez les valeurs décrites plus bas, le mot de passe de la base surtout. - Lancez les conteneurs :
docker compose up -d - Vérifiez qu'ils tournent :
docker compose ps
Les deux fichiers viennent de la dernière version publiée. Le fichier compose ne s'écrit pas à la main : il évolue avec les versions, et le projet prévient quand il change.
Régler le fichier .env
| Variable | Rôle | À faire |
|---|---|---|
UPLOAD_LOCATION | dossier des photos et vidéos | un dossier avec assez de place |
DB_DATA_LOCATION | fichiers de la base PostgreSQL | disque local, jamais un partage réseau |
DB_PASSWORD | mot de passe de la base | le changer, lettres et chiffres seulement |
IMMICH_VERSION | version de l'image | v3 suit la version majeure en cours |
TZ | fuseau horaire | à décommenter si besoin |
La documentation demande un mot de passe sans caractère spécial ni espace, uniquement A-Za-z0-9. Il ne sert qu'à l'intérieur : la base n'est pas exposée hors des conteneurs.
Ouvrir Immich en HTTPS
Le serveur d'Immich écoute sur le port 2283. Pour y accéder depuis l'extérieur, et pour que les applications mobiles s'y connectent, passez par un proxy inverse qui obtient un certificat. Avec Caddy, la page sur les proxys inverses donne la configuration minimale :
photos.votre-domaine.fr {
reverse_proxy immich_server:2283
}
Le nom immich_server suppose que Caddy tourne dans un conteneur relié au même réseau Docker qu'Immich ; avec un Caddy installé sur le système, publiez le port sur 127.0.0.1 et visez 127.0.0.1:2283. La même page prévient de deux points : Immich doit être servi à la racine d'un nom de domaine ou d'un sous-domaine, jamais dans un sous-dossier, et le proxy doit accepter de gros envois et des délais longs : avec le délai par défaut de Traefik, 60 secondes, l'envoi d'une vidéo s'arrête au bout d'une minute, d'après la même page. Le reste de la mise en place d'un proxy est dans Un certificat SSL sur son VPS.
À la première ouverture, Immich demande de créer le compte administrateur.
Sauvegarder
Immich fait lui-même une copie de sa base chaque nuit à 2 h, garde les 14 dernières et les range dans UPLOAD_LOCATION/backups, d'après la page de sauvegarde. Ces copies ne contiennent que les métadonnées, pas les photos. Il vous reste à copier tout le dossier UPLOAD_LOCATION, ou au moins ses sous-dossiers library, upload et profile, qui portent les originaux. Copiez la base d'abord, les fichiers ensuite, et gardez une copie hors du serveur.
Mettre à jour
Dans le dossier : docker compose pull && docker compose up -d, puis docker image prune pour libérer la place des anciennes images. Lisez d'abord les notes de version : les changements incompatibles arrivent avec les versions majeures. Le projet précise qu'un retour en arrière n'est pas pris en charge, et conseille de mettre à jour les applications mobiles avant le serveur. Le principe général est dans Mettre à jour un conteneur Docker.
Sur un VPS Hubspace
Docker et Compose sont installés à la livraison, et le compte admin les utilise sans sudo. Comptez un Essentiel M ou plus (8 Go) pour Immich avec la reconnaissance des visages ; un Essentiel S (4 Go) ne convient qu'en coupant l'apprentissage automatique. Seuls les ports 22, 80 et 443 sont ouverts depuis Internet : le port 2283 reste fermé même publié par Docker, l'accès passe par le proxy. Une photothèque peut vivre sur le disque supplémentaire monté sur /mnt/data, mais ce disque n'est pas compris dans la sauvegarde quotidienne du serveur : voir Utiliser le disque supplémentaire. Pour vos documents scannés plutôt que vos photos, voir Paperless-ngx. Les serveurs VPS décrivent les tailles.
Questions fréquentes
Immich remplace-t-il Google Photos ?
Pour la sauvegarde automatique du téléphone, la galerie et la recherche, oui. La différence tient à qui garde les photos : sur votre serveur, la sauvegarde de la photothèque est à votre charge.
Faut-il une carte graphique ?
Non. L'apprentissage automatique d'Immich tourne sur le processeur. Une carte graphique accélère la reconnaissance et la conversion des vidéos, mais elle n'est pas nécessaire.
Peut-on mettre les photos sur un stockage réseau ?
Les photos, oui, à condition que le système de fichiers gère les droits Unix. La base de données, jamais : la documentation exclut tout partage réseau pour DB_DATA_LOCATION.
Articles liés
- Vaultwarden : installer et sécuriser avec DockerInstaller Vaultwarden avec Docker Compose sur un serveur Linux, derrière Caddy en HTTPS, fermer les inscriptions et protéger la page d'administration.
- Installer n8n avec Docker Compose sur un serveurInstaller n8n avec Docker Compose sur un serveur Linux, derrière Traefik en HTTPS, avec les bonnes variables pour les webhooks, sauvegarder et mettre à jour.
- Nextcloud Docker : installer Nextcloud sur un VPSInstaller Nextcloud avec Docker sur un VPS grâce à l'image officielle All-in-One, ouvrir son interface sans l'exposer et le servir sur votre domaine en HTTPS.