Arrêter et supprimer les images avec docker compose down --rmi all
Dans les étapes précédentes, nous avons appris à arrêter et supprimer les conteneurs, réseaux et volumes avec docker compose down
. Par défaut, docker compose down
ne supprime pas les images Docker utilisées pour créer les conteneurs. Dans cette étape, nous allons apprendre à supprimer les images en utilisant l'option --rmi all
avec docker compose down
.
D'abord, relançons les services. Assurez-vous d'être dans le répertoire ~/project/my-compose-app
.
cd ~/project/my-compose-app
Exécutez la commande docker compose up -d
pour démarrer les services en mode détaché.
docker-compose up -d
Cela recréera les conteneurs et le réseau.
Vérifions maintenant les images Docker présentes sur votre système avec la commande docker images
.
docker images
Vous devriez voir les images nginx
et redis
listées, ainsi que d'autres images potentiellement présentes sur votre système.
Maintenant, arrêtons et supprimons les services, le réseau, les volumes et aussi les images avec docker compose down --rmi all
.
docker-compose down --rmi all -v
Nous incluons à nouveau l'option -v
pour garantir la suppression des volumes. L'option --rmi all
indique à Docker Compose de supprimer toutes les images utilisées par les services du fichier docker-compose.yml
, même si elles ne sont pas taguées.
Vous devriez voir une sortie indiquant que les conteneurs, le réseau, les volumes et les images sont en cours d'arrêt et de suppression.
Pour vérifier que les conteneurs ont été supprimés, utilisez docker ps -a
.
docker ps -a
Les conteneurs web
et redis
ne devraient pas apparaître.
Pour vérifier que le réseau a été supprimé, utilisez docker network ls
.
docker network ls
Le réseau my-compose-app_app-network
ne devrait pas être listé.
Pour vérifier que les volumes ont été supprimés, utilisez docker volume ls
.
docker volume ls
Aucun volume lié à ce projet ne devrait apparaître.
Enfin, pour vérifier que les images ont été supprimées, utilisez docker images
.
docker images
Les images nginx
et redis
utilisées par les services ne devraient plus apparaître dans la sortie, sauf si elles sont utilisées par d'autres conteneurs ou possèdent d'autres tags. docker compose down --rmi all
supprime uniquement les images non utilisées par d'autres conteneurs.