现在使用Docker一段时间之后,我实际上遇到了磁盘空间问题,因为存储了许多图像(每个版本一个):
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
registry latest 376ca9433bfe 4 weeks ago 429.1 MB
registry 0.6.5 376ca9433bfe 4 weeks ago 429.1 MB
registry 0.6.3 1f7bbd131cd8 5 weeks ago 486.2 MB
registry 0.6.2 0b520d776e7d 5 weeks ago 466.5 MB
registry 0.6.1 9f98cb899f46 5 weeks ago 456.4 MB
registry 0.6.0 873f518b98ef 5 weeks ago 466.4 MB
registry 0.6.4 b04ace768d59 5 weeks ago 486.2 MB
我知道我可以使用Docker rmi <IMAGE_ID>
删除旧版本。
有没有办法限制存储在Docker中的图像版本数量,还是自动删除它们?
答案 0 :(得分:4)
据我所知不是。这不是Docker的责任。
你可以编写一个脚本和cron。
另外,请注意,如果您有效地使用缓存,您的图像应该只在最后的Dockerfile构建步骤中有所不同。为此,请确保所有更改都是最后一步。在这种情况下,虽然您看到的每个图像的虚拟大小超过400 MB,但它实际占用的空间只是最新(非缓存)步骤的文件层大小。
答案 1 :(得分:0)
您可以使用docker pull registry:latest
仅提取最新图片。您只能检索最新图像。
标记为最新的图片会发生变化。您只需再次运行docker pull registry:latest
并删除现在将无标记的旧图像。