web-dev-qa-db-fra.com

commande unique pour arrêter et supprimer le conteneur Docker

Existe-t-il une commande pouvant combiner les commandes docker stop et docker rm ensemble? Chaque fois que je veux supprimer un conteneur en cours d'exécution, je dois exécuter 2 commandes séquentiellement, je me demande s'il existe une commande combinée pouvant simplifier ce processus.

docker stop CONTAINER_ID
docker rm CONTATINER_ID
60
mainframer

Vous pouvez utiliser :

docker rm -f CONTAINER_ID

Il supprimera le conteneur même s'il est toujours en cours d'exécution.

https://docs.docker.com/engine/reference/commandline/rm/

Vous pouvez également exécuter vos conteneurs avec l'option --rm, elle sera automatiquement supprimée à l'arrêt.

https://docs.docker.com/engine/reference/run/#clean-up-rm

119
vmonteco
docker stop CONTAINER_ID | xargs docker rm
12
ortex

Vous pouvez arrêter et supprimer le conteneur avec une seule commande le $_ vous donne le dernier écho

docker stop CONTAINER && docker rm $_
7
Axel Monroy

https://www.ctl.io/developers/blog/post/gracefully-stopping-docker-containers/

Vous pouvez utiliser kill, et également en utilisant rm et le drapeau force, il utilisera également kill. 

2
obizues

Dans mon cas, pour supprimer tous les conteneurs en cours d'exécution, j'ai utilisé

docker rm -f $(docker ps -a -q); docker rmi $(docker images -q)
1
xyz

Utilisez la commande docker ps avec l'indicateur -a pour localiser le nom ou l'ID des conteneurs à supprimer. 

docker ps -a

Pour supprimer: $ docker rm ID_or_Name ID_or_Name

Retirer un conteneur à la sortie:

Si vous savez, lorsque vous créez un conteneur, que vous ne souhaitez plus le conserver une fois que vous avez terminé, vous pouvez exécuter docker run --rm pour le supprimer automatiquement à sa fermeture.

Exécuter et supprimer: docker run --rm image_name

Supprimer tous les conteneurs sortis:

Vous pouvez localiser les conteneurs à l'aide de docker ps -a et les filtrer en fonction de leur statut: créé, redémarré, en cours d'exécution, mis en pause ou quitté. Pour examiner la liste des conteneurs sortis, utilisez l'indicateur -f pour filtrer en fonction de l'état. Une fois que vous avez vérifié que vous souhaitez supprimer ces conteneurs, utilisez -q pour transmettre les ID à la commande docker rm.

Liste:

docker ps -a -f status=exited

docker rm $(docker ps -a -f status=exited -q)

Supprimer les conteneurs en utilisant plusieurs filtres :

Les filtres Docker peuvent être combinés en répétant l'indicateur de filtre avec une valeur supplémentaire. Il en résulte une liste de conteneurs qui remplissent l'une ou l'autre condition. Par exemple, si vous souhaitez supprimer tous les conteneurs marqués comme étant Created (un état qui peut résulter de l'exécution d'un conteneur avec une commande non valide) ou Exited, vous pouvez utiliser deux filtres:

docker ps -a -f status=exited -f status=created

Arrêtez et retirez tous les conteneurs: 

docker stop $(docker ps -a -q)
docker rm $(docker ps -a -q)
0
Prakash AWS

Pour enlever un seul conteneur

docker rm -f CONTAINER_ID

Pour enlever tous les conteneurs

docker rm -f `docker container ps -qa`
0
Abhinav Mehta

Supprimer tous les conteneurs: docker ps -aq | xargs docker rm -f

0
Andriy Tolstoy

Cela arrêtera et supprimera toutes les images, y compris les conteneurs en cours d'exécution, car nous utilisons -f

docker rmi -f $(docker images -a -q)
0
Pranoy Gn