在 码头1.13中添加了新的 南瓜参数。
我现在希望减少我的图像的大小,以及能够“隐藏”在我的图层中的秘密文件。
下面您可以看到使用和不使用—— squash 参数进行构建的区别。
没有壁球
和壁球一起
现在回到我的问题。
如果我在我的 第一层添加一个秘密文件,然后使用我的 第二层的秘密文件,最后删除我的 第三层的秘密文件,然后建立与——壁球标志。
现在会有 无论如何来获取秘密文件吗?
如果我在第一层中添加了一个秘密文件,那么在 我的第二层,最后删除我的秘密文件在第三层 层,然后建立与——壁球旗帜。 现在有办法拿到秘密文件吗?
如果我在第一层中添加了一个秘密文件,那么在 我的第二层,最后删除我的秘密文件在第三层 层,然后建立与——壁球旗帜。
现在有办法拿到秘密文件吗?
答: 您的图像 不会的的秘密文件。
--squash如何运作:
--squash
构建完成后,Docker 创建一个新的图像,将每个层的差异加载到一个新层中,并引用所有父层。
换句话说: 当压缩时,Docker 将获取构建产生的所有文件系统层,并将它们折叠成一个新层。
这可以简化创建最小容器映像的过程,但是在移动映像时可能会导致稍高的开销(因为被挤压的图层不再能够在映像之间共享)。Docker 仍然缓存单个层,以使后续的构建更快。
请注意,这个功能压缩所有新建的图层成一个单一的层,它不是压缩到刮。
附注:
Docker 1.13还支持压缩使用 --compress标志从 CLI 发送到守护进程的构建上下文。这将通过减少发送的数据量来加速在远程守护进程上进行的构建。
--compress
请注意,在 Docker 1.13中,这个特性是实验性的。