ISOMan : un outil open source pour centraliser vos images ISO
Gérer une bibliothèque d’images disques (ISO) éparpillée sur plusieurs machines ou disques durs externes est une perte de temps que vous pouvez éviter grâce à ISOMan. Cet outil open source a été conçu pour faciliter la gestion d’images ISO.
ISOMan se présente comme une solution open source pour télécharger, organiser et distribuer vos images disques. Il supporte le format ISO bien entendu, mais aussi d’autres formats d’images comme QCOW2, VMDK, VDI, et IMG. L’objectif : centraliser les images au sein d’une même bibliothèque bien organisée.
Vous allez me dire, un partage sur un NAS ou un dossier sur un espace type Drive fait l’affaire. Oui, en effet, c’est une solution. L’avantage de la solution ISOMan, c’est qu’elle est accessible via une interface Web et qu’il est possible d’interagir avec elle via une API. Ainsi, via des appels API, il est possible de pousser une image dans la bibliothèque, ou à l’inverse, de télécharger une image. Il y a aussi des liens HTTP/HTTPS permettant d’avoir un lien de téléchargement direct vers les images disques.
Voici les fonctionnalités d’ISOMan :
- Support multi-formats : au-delà des images ISO, il gère des formats d’images utilisés par les solutions de virtualisation comme QCOW2, VMDK, VDI et IMG.
- Vérification d’intégrité automatisée : l’outil peut vérifier automatiquement les sommes de contrôle (MD5, SHA256, SHA512) à la fin du téléchargement d’une image ISO.
- Organisation automatique : les fichiers sont classés par distribution, version et architecture, évitant de tout avoir en vrac dans le même répertoire.
- Explorateur de fichiers en ligne : il expose les fichiers via une liste de répertoires standard, ce qui le rend compatible avec des outils qui ont besoin de pointer directement vers les fichiers d’images. On peut citer par exemple et ou le système d’importation d’une image ISO à partir d’une URL comme celui de Proxmox VE.
- API RESTful : permet d’automatiser des actions via des scripts et outils externes.
Dans ce tutoriel, nous allons découvrir comment installer ISOMan avec Docker et nous verrons comment l’utiliser pour gérer une bibliothèque d’images.
Sommaire
Installation d’ISOMan avec Docker
Nous allons procéder à l’installation d’ISOMan en clonant le dépôt GitHub officiel. Cette méthode assure que vous disposez des derniers fichiers de configuration et permet de construire l’image localement.
Placez-vous dans le répertoire où vous stockez habituellement vos applications conteneurisées. Pour ma part, ce sera le répertoire habituel : .
Puis, clonez le dépôt GitHub :
Une fois le clonage terminé, vous disposez d’un répertoire avec le nom du projet qui contient l’ensemble des fichiers.
À l’intérieur de ce dossier se trouve un fichier . Par défaut, la configuration est prévue pour écouter sur le port 8080. Si ce port est déjà utilisé sur votre serveur, vous devrez modifier ce fichier. C’est d’ailleurs mon cas, mais je retire (commente) l’exposition d’un port, car l’application sera publiée via Traefik.
Je vous propose d’effectuer plusieurs modifications, et si possible, publiez l’application en HTTPS avec un reverse proxy pour sécuriser les connexions. Vous pouvez aussi conserver le fichier en l’état et lancer la construction directement. J’attire votre attention là-dessus :
- Adaptez le fuseau horaire :
- Ajustez le numéro de port si nécessaire :
- Définissez le nombre de téléchargements en simultané, 2 par défaut :
Enregistrez et fermez le fichier. D’autres scénarios de déploiement sont détaillés sur cette page du dépôt GitHub.
Note : ce Docker Compose a une particularité, car il est conçu pour être autonome. Il contient la “recette” pour se construire lui-même (le Dockerfile local), mais il force un nom officiel (isoman:latest) pour que l’image soit propre et standardisée une fois compilée.
Créez le dossier sous afin de stocker les données de l’application (notamment vos images !).
Lancez la construction du projet :
Lors du premier lancement, Docker ne va pas télécharger l’image, il va construire l’image de l’application en local sur votre machine. Cette étape peut prendre quelques minutes.
Désormais, ouvrez un navigateur et tentez une connexion à l’application : . Pour ma part, ce sera directement en HTTPS sur un nom de domaine grâce à la publication avec le reverse proxy Traefik.
Vous arrivez sur cette page :

Prise en main d’ISOMan
L’interface d’ISOMan est épurée : en même temps, on parle de gérer des images, donc pas besoin d’une usine à gaz. Petit détail qui fait toujours plaisir : elle supporte le mode sombre.
Déposer une nouvelle image ISO
Nous allons voir comment charger une première image ISO. Cliquez sur le bouton “Add ISO Download“. Un formulaire apparaît. Pour télécharger une image ISO, ISOMan a besoin d’un lien HTTP/HTTPS. C’est à la fois pratique et contraignant. Vous ne pouvez pas uploader un fichier stocké en local sur votre PC. Il faut que ISOMan soit capable de se connecter à la source via le web.
Prenons l’exemple de la distribution Debian, que j’apprécie particulièrement. Les images ISO sont accessibles facilement, notamment via cet index en ligne. Cela permet de récupérer facilement deux choses :
- Le lien vers l’image ISO : cdimage.debian.org/debian-cd/13.3.0/amd64/iso-cd/debian-13.3.0-amd64-netinst.iso
- Le lien vers le fichier checksum correspondant (facultatif) : cdimage.debian.org/debian-cd/13.3.0/amd64/iso-cd/SHA256SUMS
Vous devez donc compléter le formulaire. Remplissez-le correctement pour garantir un classement efficace de vos images :
- Name (Nom) :
- Version :
- Architecture : sélectionnez (ou arm64 selon votre besoin).
- Edition :
- Download URL : collez ici le lien direct vers l’ISO officiel.
- Checksum URL : collez le lien vers le fichier contenant le hash (SHA256SUMS). Utile pour vérifier l’intégrité du fichier téléchargé.
Quand c’est bon, cliquez sur le bouton “+ Create Download“.

L’application ISOMan va alors initier le téléchargement via un “worker”. Vous verrez une barre de progression en temps réel. Vous pouvez lancer plusieurs téléchargements en même temps, sur le même principe.

Télécharger une image ISO depuis la bibliothèque
Chaque image ISO dispose de sa carte de présentation (il y a aussi un affichage en mode liste). Plusieurs actions sont disponibles sur chaque ISO :
- Téléchargement direct via le bouton “Download” : pour récupérer le fichier sur votre poste actuel.
- Copier l’URL d’accès sur votre instance via le bouton “Copy URL” : cette fonction vous donne l’URL directe. Par exemple, vous pouvez utiliser ce lien pour importer l’image ISO dans Proxmox.
- Copier le checksum via le bouton “Copy Checksum URL” : utile pour vérifier l’intégrité manuellement.
Le mode “Browse Files”
ISOMan propose une vue “Explorateur” très pratique. En cliquant sur “Browse Files” dans le menu en haut à droite, vous accédez à une vue hiérarchique des données. C’est comme si vous étiez en train de parcourir les données de votre serveur via le Web. Cette vue ressemble aux dépôts Linux classiques (Apache/Nginx directory listing). L’intérêt :
- C’est visuellement simple pour naviguer.
- C’est “machine-readable”. Des scripts peuvent facilement “crawler” cette structure pour trouver la dernière version disponible d’une image sans passer par l’API.

Suivi de l’espace disque
Un onglet “Statistics” est disponible. Cette page vous permet de surveiller l’espace disque consommé par votre bibliothèque d’images et elle indique également quelles sont les images les plus téléchargées. Vous avez donc quelques statistiques sur votre bibliothèque d’images.


Automatisation avec l’API
Une API REST est intégrée à l’application, ce qui signifie que vous n’êtes pas obligé d’utiliser l’interface web pour ajouter une image.
Le script ci-dessous, exécutable via PowerShell, permet de télécharger une image disque dans la bibliothèque directement via un appel API.
Vous pouvez consulter la documentation de l’API pour en savoir plus. D’autres actions sont possibles : obtenir la liste de tous les ISO, obtenir des détails sur une image disque, etc.
Conclusion
ISOMan est un petit outil sympa et je suis persuadé que certains d’entre vous verront un intérêt à son utilisation, à commencer pour organiser sa bibliothèque d’images ISO personnelles. Ce qui est dommage, c’est qu’il n’est pas possible de charger une image ISO située sur une machine locale vers l’instance ISOMan, comme on peut le faire sur un Drive, par exemple. À l’heure actuelle, il faut absolument passer par un lien Web.