如果您 运行 一个已经构建的 docker 图像,Docker 图像的父图像是否会隐式地从其存储库中提取?
Does the parent image of a Docker image get implicitly pulled from its repository if you run an already-built docker image?
docker 镜像的父镜像,Dockerfile 中“FROM”之后的镜像源,如果拉取 运行 自定义 docker 已经构建并上传的图像?或者父图像是否已嵌入子图像 docker?
我不是在谈论 docker 构建步骤,我只是在谈论构建图像并 运行 在 docker 引擎中安装它。
编辑:也不是在谈论手动拉动。只是问 docker 引擎是否自动拉动。
编辑:我相信父图像已嵌入。但是在我的测试中,某些层似乎是从其父图像的存储库中提取的。请注意,这不是决定性的。很可能是父镜像的 Dockerfile 正在做一些需要连接到它自己的存储库的事情。
它是您构建的镜像的一部分,因此您无需再次拉取它即可运行容器使用构建的镜像
在这里回答我自己的问题。
一个docker图像可以有多个图层。如果图层的某些图像不可分发,则这些图层将不会在您的注册表中,并且必须从其 原始位置 中提取它们,例如来自 Microsoft 的 Windows 基础图像容器注册表等...
如果您希望从您自己的注册表中提取所有基础层图像,您必须使用
进行配置
{
"allow-nondistributable-artifacts": ["myregistrydomain.com:5000"]
}
根据 docker 中的 this article。
然后,当您构建映像并将其推送到该注册表时,它将包括所有基础映像 - 甚至是不可分发的映像。
docker 镜像的父镜像,Dockerfile 中“FROM”之后的镜像源,如果拉取 运行 自定义 docker 已经构建并上传的图像?或者父图像是否已嵌入子图像 docker?
我不是在谈论 docker 构建步骤,我只是在谈论构建图像并 运行 在 docker 引擎中安装它。
编辑:也不是在谈论手动拉动。只是问 docker 引擎是否自动拉动。
编辑:我相信父图像已嵌入。但是在我的测试中,某些层似乎是从其父图像的存储库中提取的。请注意,这不是决定性的。很可能是父镜像的 Dockerfile 正在做一些需要连接到它自己的存储库的事情。
它是您构建的镜像的一部分,因此您无需再次拉取它即可运行容器使用构建的镜像
在这里回答我自己的问题。
一个docker图像可以有多个图层。如果图层的某些图像不可分发,则这些图层将不会在您的注册表中,并且必须从其 原始位置 中提取它们,例如来自 Microsoft 的 Windows 基础图像容器注册表等...
如果您希望从您自己的注册表中提取所有基础层图像,您必须使用
进行配置{
"allow-nondistributable-artifacts": ["myregistrydomain.com:5000"]
}
根据 docker 中的 this article。 然后,当您构建映像并将其推送到该注册表时,它将包括所有基础映像 - 甚至是不可分发的映像。