在我的一个项目中,我有几个基于对方的Docker镜像,因为我不需要每次重建它的基本部分,只是想增量构建上层的层次结构。使用Makefile逐步构建Docker图像层次结构
我通过Makefile创建图像。我这样做是因为我承认懒惰,不想每次都手动输入整个docker build
命令。也因为我想避免在这个过程中犯错误。
我现在想要做的是让make
能够检测Docker镜像是否必须重建而不是Docker本身,因为后者Docker构建上下文必须每次都发送到Docker守护进程。该映像相当大,因为它基于ubuntu:xenial,因此“向Docker守护进程发送构建上下文”总是需要大量时间用于每个单独的Docker映像,而不管它们是否需要重建。
如果make
能够检测是否需要执行docker build
命令,这将有助于大量加速该过程。
所以我想知道是否有方法让make
检测是否需要重建特定的Docker镜像。
码头工需要重建的标准是什么? (如果只是时间戳比较,那么很简单,否则,您可能会在配方中创建一个脚本来有条件地重建)。您需要提供更多信息才能有效帮助您。 – blackghost
这个标准可以让Docker重建一个Docker镜像层。如果没有什么可做的事,那么图像中的每一层都将从缓存中加载,而不是重建。在这种情况下,所有图层都可以从缓存中挑选出来,我希望'make'能够跳过整个docker build命令。我不确定Docker如何检测是否需要重建图层,以及是否将构建上下文发送到Docker守护程序是不可避免的。 –
只是一个快速免责声明:我对码头本身一无所知。但是,话虽如此,我可以假设每个码头图像都在它自己的独立目录中,并且码头不依赖于该目录之外的任何东西吗? – blackghost