GNU/Linux >> Tutoriels Linux >  >> Panels >> Docker

Comment supprimer les conteneurs Docker

Les conteneurs sont géniaux lorsqu'il s'agit de tester et de déployer un projet. Mais les conteneurs peuvent rapidement consommer de l'espace disque si vous créez plusieurs conteneurs.

Dans ce didacticiel Docker pour débutants, je vais vous montrer comment supprimer des conteneurs Docker.

Dans la forme la plus simple, vous pouvez supprimer un conteneur docker avec la commande docker rm :

docker rm container_id_or_name

Si vous souhaitez supprimer tous les conteneurs, arrêtez d'abord ceux en cours d'exécution, puis supprimez-les :

docker ps -q | xargs docker stop
docker ps -q | xargs docker rm

Mais vous n'aurez pas toujours une vie simple avec des conteneurs. Et c'est pourquoi je vais montrer différents scénarios dans lesquels vous pouvez supprimer des conteneurs Docker.

Exemples pratiques de suppression de conteneurs Docker

Comme vous pouvez le deviner, pour supprimer un conteneur, vous devez connaître son nom ou son ID. Vous pouvez vérifier tous les conteneurs docker de votre système (à l'arrêt et en cours d'exécution) avec la commande docker ps comme celle-ci :

[email protected]:~$ docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                      PORTS               NAMES
07e97581c5d8        debian              "bash"              9 minutes ago       Up 9 minutes                                    container2
6ef4545eef37        ubuntu              "bash"              11 minutes ago      Up 11 minutes                                   container1
707e40ce3c5a        ubuntu              "/bin/bash"         15 minutes ago      Exited (0) 15 minutes ago                       boring_payne
8047ab8e3673        ubuntu              "/bin/bash"         34 minutes ago      Exited (0) 15 minutes ago                       relaxed_wiles
ce84231ab213        debian              "bash"              42 minutes ago      Exited (0) 42 minutes ago                       bold_golick
12a18eaa291b        hello-world         "/hello"            2 days ago          Exited (0) 2 days ago                           brave_mendeleev

La première colonne donne l'ID du conteneur et la dernière colonne donne le nom du conteneur. Vous pouvez également remarquer que les conteneurs Docker en cours d'exécution ont "Up" dans la colonne Status.

Maintenant que vous savez comment obtenir l'ID et le nom du conteneur, voyons comment le supprimer :

Supprimer le conteneur Docker

C'est le plus simple. Vous utilisez l'ID ou le nom du conteneur de cette manière :

docker rm container_id_or_name

Vous ne recevrez pas de message comme conteneur supprimé dans la sortie. Il affiche simplement l'identifiant ou le nom du conteneur que vous avez fourni.

[email protected]:~$ docker rm 12a18eaa291b
12a18eaa291b

Supprimer un conteneur en cours d'exécution

Si un conteneur est en cours d'exécution et que vous essayez de le supprimer, vous verrez une erreur comme celle-ci :

[email protected]:~$ docker rm container1
Error response from daemon: You cannot remove a running container 6ef4545eef378788e5e9d7ac1cf2e0a717480608adb432be99fd9b3d3a604c12. Stop the container before attempting removal or force remove

De toute évidence, vous devez d'abord arrêter le conteneur Docker, puis le supprimer :

docker stop container_id_or_name
docker rm container_id_or_name

Docker vous donne l'option -f pour forcer la suppression d'un conteneur. Avec cela, vous pouvez supprimer un conteneur en cours d'exécution :

docker rm -f container_id_or_name

Ceci n'est pas recommandé car il envoie la commande kill et votre conteneur peut ne pas enregistrer son état.

Supprimer plusieurs conteneurs Docker

Vous pouvez spécifier plusieurs conteneurs Docker lors de la suppression :

docker rm container1 container2 container3

Supprimer plusieurs conteneurs Docker associés à une image Docker particulière

Dans l'exemple, supposons que vous souhaitiez supprimer tous les conteneurs associés à l'image docker ubuntu.

Je vous conseille d'abord d'arrêter les conteneurs :

docker ps -a -q --filter ancestor=ubuntu | xargs docker stop

Puis supprimez ces conteneurs :

docker ps -a -q --filter ancestor=ubuntu | xargs docker rm

Pour expliquer la commande ci-dessus, le docker ps la sortie de la commande a été filtrée avec des conteneurs associés à l'image ubuntu, puis le -q l'option ne donne que l'ID des conteneurs. Combinez-le avec la commande xargs pour fournir les ID de conteneur (associés à Ubuntu) à la commande docker rm.

Supprimer tous les conteneurs arrêtés

Si vous souhaitez supprimer tous les conteneurs arrêtés, vous pouvez les filtrer en fonction de leur statut, puis les arrêter de cette manière :

docker ps -a -q -f status=exited | xargs docker rm

Supprimer tous les conteneurs Docker

Si vous souhaitez supprimer tous les conteneurs de votre système, vous devez d'abord vous assurer d'arrêter tous les conteneurs, puis de les supprimer :

docker ps -q | xargs docker stop
docker ps -q | xargs docker rm

J'espère que vous avez aimé ce tutoriel Docker. Restez à l'écoute pour en savoir plus.


Docker
  1. Comment exporter et importer des conteneurs Docker

  2. Comment utiliser Docker Compose

  3. Comment connecter des conteneurs Docker

  4. Comment transmettre des variables d'environnement aux conteneurs Docker

  5. Comment répertorier les conteneurs Docker

Comment réduire la taille de l'image Docker dans les conteneurs Docker

Comment exécuter des conteneurs Docker

Comment arrêter les conteneurs Docker

Comment nommer ou renommer les conteneurs Docker

Comment gérer les conteneurs Docker

Comment configurer les espaces de noms réseau dans les conteneurs Docker