在Dockerfile中使用某个FROM层

我想把我的容器从centos:centos6 。 但由于某种原因, centos:centos6以某种方式在registry中更新。 这导致在不同的时间在不同的机器上构build不同的图像时可能产生不利的图像。 这种改变最近在我们的应用程序中引起了分段错

有没有一种方法可以指定从声明的确切版本,所以即使在不同时间在不同的机器上构build容器,构build也应该是相同的?

不,你不能告诉Dockerfile被固定到一个特定的图像/图层ID, 你必须使用一个标签 (如果你不使用标签,标签latest的假设和使用作为默认。

如果您担心远程registry映像将发生更改,则应该复制Dockerfile并自行构build您自己的映像版本。 您可以将其托pipe在您的帐户下的Docker Hub上,也可以运行您自己的私有registry。

这样,你就可以完全控制内容和更新的时间(例如,如果你需要将一个特定的软件包固定到旧版本)。