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

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

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


当前回答

检查码头集装箱体积

码头系统df

修剪所有图像和卷

docker prune--全部

其他回答

以下是我使用的命令,并将其放在批处理文件中以删除所有内容:

echo“正在删除容器:”&&if[-n“$(docker container ls-aq)”]; 然后docker容器stop$(docker容器ls-aq);码头装卸工集装箱rm$(码头集装箱ls-aq);fi;echo“正在删除图像:”&&如果[-n“$(docker images-aq)”];然后docker rmi-f$(docker图像-aq);fi;echo“正在删除卷:”&&if[-n“$(docker volumels-q)“];然后docker volume rm$(docker volume ls-q;fi;echo“正在删除网络:”&&if[-n“$(docker network ls|awk”{print$1“”$2}‘|grep-v‘ID|bridge|host|none‘|awk‘{print$1}’)“];然后docker网络rm$(docker网络ls | awk“{print$1”“$2}”|grep-v“ID|bridge|host|none”|awk“{print$1}”);fi;

简单方便的命令

删除所有图像

docker rmi $(docker images -a)

删除处于退出状态的容器

docker rm $(docker ps -a -f status=exited -q)

删除处于已创建状态的容器

docker rm $(docker ps -a -f status=created -q)

注意:移除所有容器,然后移除图像

docker rmi $(docker images -q) --force

要删除所有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 image prune -a

删除所有未使用的图像,而不仅仅是悬挂的图像。将-f选项添加到武力

本地docker版本:17.09.0-ce,Gitcommit:afdb6d4,OS/Arch:darwin/amd64

$ docker image prune -h
Flag shorthand -h has been deprecated, please use --help

Usage:  docker image prune [OPTIONS]

Remove unused images

Options:
  -a, --all             Remove all unused images, not just dangling ones
      --filter filter   Provide filter values (e.g. 'until=<timestamp>')
  -f, --force           Do not prompt for confirmation
      --help            Print usage