1.Docker Images

b9c0a66c6e448b64de5d1971d5dfd824470.jpg

 

2.Show untagged images

From <https://docs.docker.com/engine/reference/commandline/images/>

188111cdcbc0840c5ca148bec348dc0d799.jpg

-q 是只显示ID

 

3.显示TAG为DEV的image:

94fd497d4b63ce8e0652f4732d00522300f.jpg

现在通过2和3已经获取到所有repository不含microsoft的image ID了,用docker images rmi 删除即可

E.g.

$ docker rmi $(docker images -f "dangling=true" -q)

From <https://docs.docker.com/engine/reference/commandline/images/>

 

4.如何一次性删除所有repository不含microsoft的image

$c=docker images -q

5c0076f76914c9a49cc0dc6887a823cd2c4.jpg

$d=docker images "microsoft/*" -q

9c67f2f31d8e39b562d65dd9df739fa8d30.jpg

比较两个集合

Diff $c $d -IncludeEqual

d2a330eadef70276353e7ed2ddafb4654ad.jpg

用循环

0fc93d120ca25caf8083801e2497f929f1a.jpg

这样就取出了所有不包含microsoft的repository的ID了。

Diff $c $d -IncludeEqual | where{$_.SideIndicator -ne "=="} | foreach{docker rmi -f $_.InputObject}

删的时候可能会报错,先把占用的container删了就好了

转载于:https://my.oschina.net/qiuSHENv587/blog/3052239

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐