gpt4 book ai didi

docker - 中间Docker镜像是否占用磁盘空间?

转载 作者:行者123 更新时间:2023-12-02 20:35:48 25 4
gpt4 key购买 nike

如果docker文件中有RUN命令,则它会创建一些中间镜像。我的问题是这样的中间镜像是否会占用硬盘驱动器的任何内存?如果是,那么docker build --rm应该足够了吗?

最佳答案

是的,中间层占据了磁盘空间,通常这是一件好事。这有利于图层的重用和快速构建。相反,您应该集中精力通过优化dockerfile来减少层数。您最终的Docker镜像实际上是所有图层的组合。因此,除非您删除最终图像并且没有其他图像在使用这些图层,否则您无法删除这些图层。
docker build --rm不会节省任何额外的磁盘空间。要了解原因,您应该知道docker build的工作原理-dockerfile中的每条指令(例如RUN)都会启动一个新容器,该指令完成后,该容器将退出并提交给镜像。
docker build --rm删除这些中间容器。 --rm选项默认情况下为true,因此docker build --rmdocker build相比没有太大影响。由于某些原因,如果您想保留中间容器,则可以使用--rm=False将其关闭。

如果有任何其他图像未使用的图层,则可以将其删除。这些称为dangling层。您可以使用以下命令将其删除-
docker rmi $(docker images -f "dangling=true" -q)

关于docker - 中间Docker镜像是否占用磁盘空间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59870802/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com