我最近开始使用Docker,从未意识到我应该使用Docker compose down而不是ctrl-c或Docker composestop来摆脱我的实验。我现在在本地有大量不需要的docker图像。
我是否可以运行一个标志来删除所有本地docker图像和容器?
类似docker rmi-all-force-all-flag的东西不存在,但我正在寻找具有类似想法的东西。
我最近开始使用Docker,从未意识到我应该使用Docker compose down而不是ctrl-c或Docker composestop来摆脱我的实验。我现在在本地有大量不需要的docker图像。
我是否可以运行一个标志来删除所有本地docker图像和容器?
类似docker rmi-all-force-all-flag的东西不存在,但我正在寻找具有类似想法的东西。
当前回答
删除所有停止的容器和所有未使用的图像。
docker系统prune-a
其他回答
Unix
为了删除包括其卷使用在内的所有容器,
docker rm -vf $(docker ps -aq)
为了删除所有图像,
docker rmi -f $(docker images -aq)
请记住,在删除创建这些容器的所有图像之前,应先删除所有容器。
Windows-Powershell
docker images -a -q | % { docker image rm $_ -f }
Windows-命令行
for /F %i in ('docker images -a -q') do docker rmi -f %i
对于Linux Ubuntu用户,下面对我有用。注意事项-它将删除所有内容。
要删除容器及其关联的卷,请使用以下方法:
sudo docker rm -vf $(sudo docker ps -a -q)
要删除图像,请使用以下内容:
sudo docker rmi -f $(sudo docker images -a -q)
检查码头集装箱体积
码头系统df
修剪所有图像和卷
docker prune--全部
添加到techtabu接受的答案中,如果您在windows上使用docker,可以使用以下命令
for/F“delims=”('docker ps-A-q')中的%A做docker rm%A
这里,docker ps-a-q命令列出了所有图像,并将此列表逐一传递给docker rm
有关此类命令格式如何在windowscmd中工作的更多详细信息,请参阅本文。
xargs的另一种方式(仅限Unix)
docker image ls -q | xargs -I {} docker image rm -f {}