docker 使用一段时间之后,可能堆积很多用不着的,或者编译错误的镜像,一个一个删除就很麻烦,需要一个批量删除的方法,如下:
docker rmi $(docker images | grep "provider" | awk '{print $3}')
上面这条命令,可以删除所有名字中带 “provider” 关键字的镜像, grep 后面的参数,就是筛选出名字中包含这个参数的镜像.可以通过这条命令,删除所有名字中包含此参数的镜像.
来看一下效果,删除之前是这个样子的:
![[Docker]如何批量删除镜像 [Docker]如何批量删除镜像](/default/index/img?u=L2RlZmF1bHQvaW5kZXgvaW1nP3U9YUhSMGNITTZMeTlwYldjdFlteHZaeTVqYzJSdWFXMW5MbU51THpJd01UZ3hNakl5TWpBME9ERXlPVFE1TG1wd1p6OTRMVzl6Y3kxd2NtOWpaWE56UFdsdFlXZGxMM2RoZEdWeWJXRnlheXgwZVhCbFgxcHRSblZhTTNCdldsYzFibUZIVm5Ca1Iyc3NjMmhoWkc5M1h6RXdMSFJsZUhSZllVaFNNR05JVFRaTWVUbHBZa2M1Ymt4dFRucGFSelIxWW0xV01Fd3pjSE5pUmpoM1RrUkJNU3h6YVhwbFh6RTJMR052Ykc5eVgwWkdSa1pHUml4MFh6Y3c=)
运行以上命令之后:
![[Docker]如何批量删除镜像 [Docker]如何批量删除镜像](/default/index/img?u=L2RlZmF1bHQvaW5kZXgvaW1nP3U9YUhSMGNITTZMeTlwYldjdFlteHZaeTVqYzJSdWFXMW5MbU51THpJd01UZ3hNakl5TWpBME9ETXpPVGt4TG1wd1p6OTRMVzl6Y3kxd2NtOWpaWE56UFdsdFlXZGxMM2RoZEdWeWJXRnlheXgwZVhCbFgxcHRSblZhTTNCdldsYzFibUZIVm5Ca1Iyc3NjMmhoWkc5M1h6RXdMSFJsZUhSZllVaFNNR05JVFRaTWVUbHBZa2M1Ymt4dFRucGFSelIxWW0xV01Fd3pjSE5pUmpoM1RrUkJNU3h6YVhwbFh6RTJMR052Ykc5eVgwWkdSa1pHUml4MFh6Y3c=)
嗯,干净了许多.也从侧面说明了规范命名的重要性.
当然,如果你不怕麻烦,也可以使用命令:
docker rmi imageID
来进行一个一个删除…