5.1 Commande docker images
Si tu as déjà des images Docker stockées sur ton système, il existe des commandes spéciales pour les gérer. En premier lieu, on parle de docker images
et docker rmi
. Dans cette conférence, on va examiner en détail comment utiliser ces commandes pour gérer efficacement les images Docker.
La commande docker images
affiche une liste des images stockées localement sur ton système. Elle montre des données telles que le nom du repository, le tag, l'identifiant de l'image, la date de création et la taille. Ces infos permettent d'évaluer rapidement quelles images sont disponibles et combien d'espace elles occupent.
Syntaxe :
docker images [OPTIONS] [REPOSITORY[:TAG]]
Où :
-
OPTIONS
: les paramètres supplémentaires pour filtrer et formater la sortie. -
[REPOSITORY[:TAG]]
: (optionnel) filtre par le nom du repository et/ou par le tag.
Exemple d'utilisation basique
Cet exemple affiche une liste de toutes les images stockées localement.
docker images
Exemple de sortie pour la commande docker images
:
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx latest 5a7e5b1a3b8c 2 days ago 133MB
ubuntu 20.04 ba6acccedd29 3 weeks ago 72.9MB
myapp 1.0 d1e5e2ff5ff2 1 month ago 89.5MB
Description des colonnes :
- REPOSITORY: le nom du repository auquel appartient l'image.
- TAG: le tag représentant la version de l'image.
- IMAGE ID: l'identifiant unique de l'image.
- CREATED: le temps écoulé depuis la création de l'image.
- SIZE: la taille de l'image en mémoire.
5.2 Filtrage des images
Le filtrage des images te permet de réduire les résultats de la commande docker images
, afin de voir uniquement celles qui correspondent à tes critères. C'est super pratique si tu as plein d'images stockées sur ton système et que tu veux rapidement trouver une image spécifique par nom de repository, tag ou d'autres paramètres.
1. Filtrer par repository
docker images nginx
Cet exemple affichera uniquement les images du repository nginx
.
2. Filtrer par tag
docker images ubuntu:20.04
Cet exemple affichera l'image ubuntu
avec le tag 20.04
.
3. Utilisation du paramètre -a (all)
Par défaut, la commande docker images
montre uniquement les dernières versions des images. Pour afficher toutes les images, y compris les couches intermédiaires, utilise l'option -a
.
docker images -a
4. Formater la sortie
Pour rendre la lecture plus simple ou pour intégrer avec d'autres outils, tu peux personnaliser le format de sortie avec l'option --format
. C'est particulièrement utile dans les scripts et pour automatiser des tâches.
docker images --format "{{.Repository}}:{{.Tag}} {{.ID}}"
5.3 Commande docker rmi
La commande docker rmi
est utilisée pour supprimer une ou plusieurs images Docker. C'est utile pour libérer de l'espace disque et garder le système en ordre, surtout si les images ne sont plus utilisées.
Syntaxe :
docker rmi [OPTIONS] IMAGE [IMAGE...]
Où :
- OPTIONS : paramètres supplémentaires pour gérer le processus de suppression.
- IMAGE : nom, tag ou identifiant de l'image à supprimer.
Exemple d'utilisation basique
Cet exemple supprime l'image avec le nom nginx
.
docker rmi nginx
Suppression par ID d'image
Cet exemple supprime l'image avec l'ID 5a7e5b1a3b8c
.
docker rmi 5a7e5b1a3b8c
Suppression forcée
Si l'image est utilisée par un conteneur ou est bloquée, une suppression standard peut ne pas être possible. Pour une suppression forcée, utilisez l'option -f (force)
.
docker rmi -f myapp:1.0
Suppression de plusieurs images
Pour supprimer plusieurs images en une seule fois, listez-les avec un espace entre.
docker rmi nginx ubuntu:20.04 myapp:1.0
5.4 Exemples pratiques
Exemple 1 : Afficher toutes les images
Pour obtenir la liste complète de toutes les images stockées sur la machine locale, exécute la commande :
docker images
Cette commande affichera un tableau avec les noms des repositories, les tags, les ID des images, les dates de création et les tailles.
Exemple 2 : Afficher les images avec un format personnalisé
Pour obtenir la liste des images avec un format personnalisé, par exemple, afficher uniquement le nom du repository et le tag :
docker images --format "{{.Repository}}:{{.Tag}}"
Cet exemple montre comment utiliser l'option --format
pour personnaliser l'affichage, ce qui est pratique pour écrire des scripts.
Exemple 3 : Supprimer toutes les images inutilisées
Si tu veux supprimer toutes les images non utilisées par des conteneurs, commence par obtenir leur liste, puis effectue la suppression :
docker images -q
docker rmi $(docker images -q)
La commande docker images -q
affiche uniquement les ID de toutes les images enregistrées localement, qui sont ensuite passés à docker rmi
pour les supprimer.
Exemple 4 : Supprimer les dangling images
Les Dangling images
sont des images sans tags, laissées après des mises à jour d'images ou des builds ratés. Pour les supprimer, utilise la commande :
docker rmi $(docker images -f "dangling=true" -q)
Ici -f "dangling=true"
filtre les images sans tags, et -q
affiche uniquement leurs ID, qui sont passés à la commande de suppression.
GO TO FULL VERSION