gpt4 book ai didi

docker - 有没有办法将 "apply a patch"转换为 docker 镜像?

转载 作者:行者123 更新时间:2023-12-02 07:25:36 28 4
gpt4 key购买 nike

是否有任何方法可以对 Docker 镜像“应用补丁”,特别是一个或多个 RUN、ADD 等命令?

例如,RUN 命令可能需要 20 分钟才能运行,用于下载、编译和安装二进制文件。是否可以对其进行比较并将其应用到另一个图像?

我能想到的唯一方法(我还没有尝试过)是运行docker diff,解析输出,创建一个tgz,然后使用tgz作为ADD 在另一个 Dockerfile 中。

我知道这存在问题,例如如果事先调用 apt-get update ,这可能会破坏二进制文件的预期动态库链接等。我对此表示同意,因为我的测试将失败,并且将表明我必须重建再次“差异”。

我也意识到可能会有冲突。我很高兴完全替换该文件。

此功能的原因是为了节省时间。例如,有时需要更改早期的 Dockerfile 命令,并且会破坏缓存。此外,尽管我尝试使它们相同以利用缓存,但两个不同 Dockerfile 中的前面的命令并不总是相同。

最佳答案

简短的回答是,不,你不能这样做。

长的答案是,只要有足够的动力,您也许能够编写出您想要的代码。我在这里编写了一些有关 docker 镜像格式(以及用于操作这些镜像的工具)的文档:

这可能会给您一些关于从哪里开始的想法。

就我个人而言,我怀疑这种努力不值得。

关于docker - 有没有办法将 "apply a patch"转换为 docker 镜像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28868429/

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