两个docker的快捷alias

一个是清理过期的image,也就是将名字为的镜像快速清理掉:

# alias.zsh
alias 'dclean-none'='docker images|grep "^<none>"|awk '\''{print $3}'\''|xargs docker rmi -f'

另一个是清理docker build失败时产生的冗余image

# alias.zsh
alias 'dclean2'='docker ps -a|grep "^[a-f0-9]\{12\}[[:blank:]]\+[a-z0-9]\{12\}[[:blank:]]\+[[:print:]]\+[[:blank:]]\+[[:lower:]]\+_[[:lower:]]\+"|awk '\''{print $1}'\''|xargs docker rm'

因为严格来说没法绝对匹配,这个正则假设了IMAGE不是12位的小写+数字,但是有可能因为原来的镜像更新导致本来有名字的镜像,变成了sha编码,所以继续判定了末尾的NAMES是否是由#单词_单词#的结构组成的。

所以自己的镜像尽可能避免这个场景,或者有更好的方案欢迎留言~

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据