一句命令删除docker所有镜像或容器

使用docker有时想删除所有镜像,或删除所有容器,下面给出实现方法:
删除所有镜像:

sudo docker rmi $(sudo docker images | sudo grep -o '[0-9,a-f]\{8\}')

删除所有容器:

sudo docker rm $(sudo docker ps -a | sudo grep -o '[0-9,a-f]\{8\}')

下面讲解一下原理,删除镜像中,

sudo docker images  //列出所有镜像
|                   //管道符号,相当有把列出点镜像字符串完全交给下一步处理
sudo grep -o '[0-9,a-f]\{8\}'   //利用grep过滤字符串。通过镜像id删除镜像,
                    // 此处通过匹配字符串的八位数必须为0-9或a-f之间点数(十六进制)。
                    // -o 指定只输出匹配点字符串,而不是整行。
                    //记得在grep前加sudo来提升权限
                    //“sudo docker rmi 一个或多个镜像名”是docker删除镜像的命令 

容器的原理差不多,不再赘述。

猜你喜欢

转载自blog.csdn.net/gengli2017/article/details/81561503