也许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
也可以看看:
答案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
以获取有关所有命令的更多信息。