FROM 图像图层是否包含在我的图像中



我有一个Dockerfile:

FROM baseimage
RUN <do stuff>

我在本地有一个baseimage,但它在 Docker Hub 上不可用。我使用上面的Dockerfile构建myimage,并将myimage推送到Docker Hub。

我的问题是:myimage包括baseimage吗?

另外,假设其他用户拉myimage.他在当地没有baseimage。他能成功拉myimage跑吗?

我遇到的实际问题是其他用户的拉myimage失败:

get https://registry-1.docker.io/v2/<BASEIMAGE>: unauthorized: incorrect username or password

尽管事先明确运行

docker login -u <USER> https://registry-1.docker.io/
Password: 
Login Succeeded
docker login https://registry-1.docker.io/v2/<ORG>/<BASEIMAGE>/manifests/<BASEIMAGE>
Authenticating with existing credentials...
Login Succeeded

我认为对于私有图像,包括baseimage在内的所有层都可以在myimage上获得。

图像只是一堆层。当您在 dockerfile 中有FROM时,构建过程将通过在FROM映像中的层顶部添加层来启动新映像。

推送映像后,它会从基本映像推送此映像的所有图层(包括图层(。

当您拉取映像时,它将下载本地不存在的所有图层以及解释如何堆叠它们的清单。

最新更新