我最近开始使用Docker,从未意识到我应该使用Docker compose down而不是ctrl-c或Docker composestop来摆脱我的实验。我现在在本地有大量不需要的docker图像。

我是否可以运行一个标志来删除所有本地docker图像和容器?

类似docker rmi-all-force-all-flag的东西不存在,但我正在寻找具有类似想法的东西。


当前回答

您可以这样尝试:

docker system prune

其他回答

对于Linux Ubuntu用户,下面对我有用。注意事项-它将删除所有内容。

要删除容器及其关联的卷,请使用以下方法:

sudo docker rm -vf $(sudo docker ps -a -q)

要删除图像,请使用以下内容:

sudo docker rmi -f $(sudo docker images -a -q)

要删除所有Docker本地Docker镜像,请执行以下两个步骤:

步骤1:docker图像(列出所有具有id的docker图像)

     example :
     REPOSITORY    TAG    IMAGE ID            CREATED             SIZE
     pradip564/my  latest 31e522c6cfe4        3 months ago        915MB

步骤2:docker image rm 31e522c6cfe4(图像ID)

      OUTPUT : image deleted

删除所有图像,但至少有一个容器与其关联

$ docker images prune -a

要获取图像的所有名称:docker-images-a-q,并在同一行中使用此命令删除所有图像。

docker image rmi $(docker images -a -q)

如果您将图像附加到至少一个正在运行的容器,最好先停止它们。

要删除10天前(240小时)创建的图像,请执行以下操作:

$ docker images prune -a --force --filter "until=240h"

可以使用以下命令进行验证:

$  docker images --format 'table {{.Repository}}\t{{.Tag}}\t{{.ID}}\t{{.CreatedAt}}\t{{.Size}}'

sudo docker images/docker images//带id的图像列表sudo docker rm image<image_id>/docker rm image<image_id>

您可以这样尝试:

docker system prune