Immich, c'est un peu le Graal pour la gestion de photos dans TrueNas ou autre stack maison. Une alternative open source à Google Photos, avec reconnaissance faciale, recherche intelligente, et surtout, toutes mes données bien au chaud chez moi. J'étais sur un petit nuage, fier de ma souveraineté numérique, jusqu'à ce que je tombe sur une information qui m'a fait tiquer : le composant Immich Machine Learning, cette petite merveille qui fait toutes les tâches d'IA, pouvait, dans certaines versions, envoyer des données à… Microsoft.
Microsoft ? Dans mon homelab auto-hébergé, censé être un bastion de ma vie privée ? L'ironie n'a pas manqué de me frapper. Alors, j'ai creusé. Et bonne nouvelle : non seulement c'est facile à maîtriser, mais l'équipe d'Immich a déjà corrigé le tir pour les versions récentes. Mais pour ceux qui sont sur des versions plus anciennes ou qui veulent juste être certains, voici le mode d'emploi pour reprendre le contrôle total.
Comprendre la télémétrie ONNX Runtime : le passager clandestin
Le cœur de l'affaire, c'est ONNX Runtime. C'est une bibliothèque d'exécution open source pour les modèles d'apprentissage automatique (Machine Learning), développée par Microsoft. Immich l'utilise dans son conteneur immich-machine-learning pour des tâches comme la recherche sémantique, la reconnaissance faciale, la détection de doublons, ou l'OCR. C'est un outil puissant, mais comme beaucoup de logiciels, il a été conçu avec une fonctionnalité de télémétrie activée par défaut.
Cette télémétrie, selon Microsoft, est censée collecter des données d'utilisation anonymes pour améliorer le produit. On parle de métriques comme la version du runtime, le type de CPU/GPU utilisé, ou les performances d'inférence. Le problème, pour un projet axé sur la confidentialité comme Immich et pour nous, les homelabbers, c'est que des données sortent de notre réseau sans un consentement explicite et clair. Même si elles sont anonymes (ce qui est toujours à prendre avec des pincettes), le principe est là : mon serveur ne doit parler qu'à moi, sauf instruction contraire.
Vérifier la présence et l'activité de la télémétrie
Avant de paniquer, il est important de noter qu'Immich a réagi rapidement. Depuis la version 3.3.6 (publiée le 4 novembre 2026), la télémétrie ONNX Runtime est désactivée par défaut dans le conteneur immich-machine-learning. Si vous êtes sur une version plus récente, vous êtes probablement déjà tranquille. Mais comme l'adage le dit : la confiance n'exclut pas le contrôle !
Pour les versions antérieures à la 3.3.6, ou si vous voulez vérifier par vous-même, vous pouvez surveiller les communications réseau de votre conteneur immich-machine-learning. L'adresse à surveiller est mobile.events.data.microsoft.com. Des outils comme tcpdump ou netstat sur votre hôte Docker, combinés à dig pour résoudre l'IP de la cible Microsoft, peuvent vous aider. Mais soyons honnêtes, c'est un peu fastidieux pour la plupart d'entre nous.
Le plus simple et le plus sûr est d'appliquer la désactivation, quelle que soit votre version, pour être sûr de votre coup. Ça coûte rien et ça fait du bien à l'esprit.
Le guide pas à pas pour désactiver la télémétrie Microsoft
La solution est incroyablement simple : une variable d'environnement. La bibliothèque ONNX Runtime respecte une variable spécifique qui lui indique de garder le silence. Il suffit de l'ajouter à la configuration de votre service immich-machine-learning dans votre fichier docker-compose.yml.
Étape 1 : Ouvrir votre docker-compose.yml
Accédez au répertoire où se trouve votre fichier docker-compose.yml (souvent dans ./immich-app si vous avez suivi la documentation officielle).
Étape 2 : Ajouter la variable d'environnement
Recherchez le service immich-machine-learning et ajoutez la ligne suivante sous la section environment: :
- ORT_DISABLE_TELEMETRY=1
Voici un exemple de ce à quoi cela pourrait ressembler dans votre fichier docker-compose.yml (les autres services et options sont omis pour la clarté) :
services:
immich-machine-learning:
image: ghcr.io/immich-app/immich-machine-learning:v3
# ... autres configurations ...
environment:
- NODE_ENV=production
- IMMICH_MACHINE_LEARNING_DEVICE=cpu # Ou cuda, rocm, openvino
- LOG_LEVEL=verbose
- ORT_DISABLE_TELEMETRY=1 # ... autres configurations ...
N'oubliez pas que vous pourriez avoir d'autres variables d'environnement déjà définies. Assurez-vous simplement d'ajouter - ORT_DISABLE_TELEMETRY=1 à la liste.
Étape 3 : Redémarrer le service Immich Machine Learning
Une fois que vous avez modifié et sauvegardé votre docker-compose.yml, vous devez redémarrer le service pour que la modification prenne effet. La commande classique pour relancer tous vos conteneurs Immich est :
docker compose up -d
Ceci va recréer le conteneur immich-machine-learning avec la nouvelle variable d'environnement. Et voilà, plus de bavardage vers Redmond !
Aller plus loin : l'isolation réseau pour une tranquillité d'esprit maximale
Puisqu'on parle de contrôle des communications, c'est l'occasion de mentionner une autre bonne pratique pour les homelabbers : l'isolation réseau des conteneurs Docker. Même si la télémétrie est désactivée, s'assurer que vos conteneurs ne peuvent pas initier de connexions externes non sollicitées est une excellente couche de sécurité supplémentaire.
Vous pouvez créer un réseau Docker interne et l'assigner à vos services Immich. Cela bloque toutes les communications externes non explicitement autorisées.
networks:
immich-iso:
internal: true
driver: bridge
Puis, vous assignez ce réseau à vos services Immich (par exemple immich-machine-learning, immich-server, etc.) :
services:
immich-machine-learning:
networks:
- immich-iso
immich-server:
networks:
- immich-iso
# ... autres conteneurs Immich ...
Avec cette configuration, vos conteneurs Immich ne pourront communiquer qu'entre eux sur ce réseau immich-iso, à moins que vous ne définissiez explicitement d'autres réseaux pour des besoins spécifiques (par exemple, pour un reverse proxy). C'est un pas de plus vers une forteresse numérique imprenable.
Implications et bénéfices : plus qu'une simple variable
Désactiver cette télémétrie, c'est bien plus qu'une simple ligne de code. C'est un geste symbolique fort pour tout homelabber :
- Vie privée renforcée : Vos données restent chez vous, point final. Pas de métriques, même anonymes, qui partent vers des serveurs tiers.
- Confiance et transparence : Cela renforce la confiance dans le projet Immich, qui a montré sa réactivité en corrigeant le problème. Et ça nous rappelle l'importance d'auditer les outils, même open source.
- Maîtrise de son infrastructure : Chaque connexion sortante doit être sous votre contrôle explicite. C'est le cœur même de la philosophie du self-hosting.
- Performance (marginale) : Éliminer toute communication réseau non essentielle peut, à la marge, libérer quelques ressources ou éviter des latences.
Réflexions sur la confiance et l'audit des outils open source
Cette petite histoire avec Immich et ONNX Runtime est un excellent rappel. Même dans le monde de l'open source et du self-hosting, la vigilance est de mise. Les projets dépendent souvent de bibliothèques tierces, et ces dernières peuvent avoir leurs propres comportements par défaut, parfois inattendus pour l'utilisateur final.
Ce n'est pas une critique d'Immich, loin de là. L'équipe a fait un travail fantastique en créant un produit aussi complet et en corrigeant rapidement ce souci. C'est plutôt une invitation à toujours garder un œil sur ce qui tourne dans nos homelabs, à lire la documentation, et à comprendre les dépendances. L'audit, même superficiel, de ce que nos machines communiquent, est une habitude saine.
Conclusion : Un pas de plus vers la souveraineté numérique
Au final, désactiver la télémétrie Microsoft dans Immich Machine Learning est une opération simple avec un impact significatif sur votre tranquillité d'esprit. C'est un petit ajustement, mais il incarne parfaitement l'esprit du self-hosting : la reprise de contrôle total sur nos données et notre infrastructure.
Alors, si vous avez Immich, prenez quelques minutes pour vérifier ou appliquer cette modification. Vos souvenirs photos méritent d'être gérés dans un environnement où la confidentialité est la priorité absolue. Et maintenant, profitez pleinement de votre bibliothèque photo, sans arrière-pensée !