“ docker container prune”和“ docker rm $(docker container ls -aq)”之间有什么区别?

马克曼:

我正在阅读Docker文档,但我不了解它们之间的区别:

docker container prune

docker rm $(docker container ls -aq)

请注意,在链接中,我列出的第二个命令是docker rm $(docker ps -a -q),但是该命令和我编写的命令之间没有区别。container ls只是在新版本中的ps命令。

似乎这两个命令都删除了所有停止的容器。不仅如此,还是仅仅是同义词?

tgogos:

我认为没有实质性差异。-a尽管意味着列出所有容器,结果docker rm ...也将尝试删除正在运行的容器。这给出了您在下面看到的错误:

守护程序的错误响应:您无法删除正在运行的容器[...]尝试删除或强制删除之前,请先停止容器

例如

$ docker container run --rm -itd alpine:latest 
0ec4d7459d35749ecc24cc5c6fd748f4254b0782f73f1ede76cf49b1fc53b2d4

$ docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
0ec4d7459d35        alpine:latest       "/bin/sh"           4 seconds ago       Up 1 second                             jovial_ritchie

$ docker rm $(docker container ls -aq)
Error response from daemon: You cannot remove a running container 0ec4d7459d35749ecc24cc5c6fd748f4254b0782f73f1ede76cf49b1fc53b2d4. Stop the container before attempting removal or force remove

$ docker container prune
WARNING! This will remove all stopped containers.
Are you sure you want to continue? [y/N] y
Total reclaimed space: 0B

但是...差异时--force-f使用:

在这种情况下,这些命令执行2项不同的操作:

  • docker rm -f ... 强制删除正在运行的容器(使用SIGKILL),这意味着它将删除正在运行的容器。

    $ docker rm -f $(docker container ls -aq)
    0ec4d7459d35
    
  • docker container prune -f会在不要求确认的情况下删除所有停止的容器(不会[y/N]打印提示)。

    $ docker container prune -f
    Total reclaimed space: 0B
    

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

“ docker ps”和“ docker container ls”之间有区别吗?

docker run和docker container run有什么区别

docker container rm和docker container kill是否有效地实现了相同的目标?

Docker Host和Container有什么区别

“ docker stop”和“ docker rm”有什么区别?

docker start和docker container start有什么区别吗?

GitHub Container Registry和适用于Docker的Github软件包之间有什么区别?

docker run 后,docker 不在 `container ls` 或 `ps` 中

是否有docker run --net = container:thingie --pid = container:thingie -it --rm --busybox sh的kubectl版本?

“ docker images ls”和“ docker image ls”有什么区别?

“ Docker Toolbox”,“ docker-machine”和“ Docker Container”之间的关系是什么

docker / docker-compose中的'down'和'rm'有什么区别?

运行docker build命令时--force-rm和--rm有什么区别

运行docker build命令时--force-rm和--rm有什么区别

Docker Container与Unikernel的比较

Docker Container 无法上网

Windows Host和Linux Docker Container之间的通信

Ansible,docker_container和depends_on

具有不同Container OS和Host OS的Docker

docker BRIDGE和HOST模式之间有什么区别?

在Docker中,容器和映像之间有什么区别?

docker中的图层和图像之间有什么区别?

在Docker中保存和导出之间有什么区别?

Docker映像和容器之间有什么区别?

使用docker-compose启动Docker Container

在 docker-container 中调用 docker

Docker Container不会以systemctl开头

Shell script on running a docker container

Docker和VirtualBox有什么区别?