无法终止容器:foo:容器 foo 未运行

无法终止容器:foo:容器 foo 未运行

也许kill是错误的术语,或者至少我使用得不正确。

如何销毁 Docker 容器?将它们放入垃圾箱。删除。移除。擦除。

docker container kill $(docker ps -a -q  | awk '{print $1}')

不太管用:

Error response from daemon: Cannot kill container: 06e44d24ba8d: Container 06e44d24ba8d3df83e10a1829f04755cb9053faa68ab3dabccd10c3ee1c80322 is not running
Error response from daemon: Cannot kill container: 22539a069e3b: Container 22539a069e3b8bbbd27b062603a7667857ac1a5e64242004fe7b72411a9cdbca is not running
Error response from daemon: Cannot kill container: 1f7cf43ab398: Container 1f7cf43ab398e6e18416f69fc947b49d9792b1932a4b157f0514f9f6638ca185 is not running
Error response from daemon: Cannot kill container: 7fc8c24ccabe: Container 7fc8c24ccabef04215df9ba7b8c171df6b963942e6e90c92a462cc0ab9d5dcb0 is not running

也可以看看:

https://stackoverflow.com/q/51015597/4531180

答案1

docker kill将不会破坏容器,它只会(停止)跑步容器。但docker ps -a也会显示未运行的容器,因此对于所有这些未运行的容器,您都会收到错误。

省略仅终止-a所有正在运行的容器:

docker kill $(docker ps -q)

使用docker stop而不是docker kill如果您希望进程首先尝试终止自身(SIGTERM)而不是直接终止(SIGKILL)。

或者使用docker rm删除(销毁)容器:

docker rm --force $(docker ps -a -q)

--force或者-f也需要 rm 正在运行的容器。

笔记:
这将删除全部容器。

使用docker container prune删除所有停止的容器。


请阅读文档或运行docker help以获取有关所有命令的更多信息。

相关内容