如何检查 docker 镜像是基于哪个版本构建的

cha*_*198 4 docker

我在 Artifactory 中有一个 docker 镜像。如何查看“基础镜像版本是”?

例如,我的 dockerimage 在基于 docker 文件创建的神器中,如下所示

FROM test-image:v1.0.0
...
Run Code Online (Sandbox Code Playgroud)

现在构建完成后,我如何才能找到该图像是构建于v1.0.0

我尝试docker inspect <imagename>这样做并没有帮助我找到test-image. 我还能找到这个版本吗?

Mat*_*ava 6

您可以用来docker image history查看映像组成的文件系统层。

\n

例如,假设您有名为 的图像app

\n
docker image history app\n
Run Code Online (Sandbox Code Playgroud)\n

结果看起来像这样。

\n
IMAGE               CREATED             CREATED BY                                      SIZE                COMMENT\n7a85c25a7a6b        3 hours ago         /bin/sh -c #(nop)  CMD ["node" "index.js"]      0B                  \n339d3cb45826        3 hours ago         /bin/sh -c #(nop) COPY dir:15f5040b90b2035eb\xe2\x80\xa6   471B                \nd7c2ba41aed4        8 days ago          /bin/sh -c #(nop) WORKDIR /node/app             0B                  \nda8751259bd7        8 days ago          /bin/sh -c #(nop)  EXPOSE 5000                  0B                  \n25d4e098fa1b        8 days ago          /bin/sh -c #(nop)  ENV PORT=5000                0B                  \n0e2e78467169        5 weeks ago         /bin/sh -c #(nop)  CMD ["node"]                 0B                  \n<missing>           5 weeks ago         /bin/sh -c #(nop)  ENTRYPOINT ["docker-entry\xe2\x80\xa6   0B                  \n<missing>           5 weeks ago         /bin/sh -c #(nop) COPY file:238737301d473041\xe2\x80\xa6   116B                \n<missing>           5 weeks ago         /bin/sh -c set -ex   && savedAptMark="$(apt-\xe2\x80\xa6   9.58MB              \n<missing>           5 weeks ago         /bin/sh -c #(nop)  ENV YARN_VERSION=1.22.4      0B                  \n<missing>           5 weeks ago         /bin/sh -c ARCH= && dpkgArch="$(dpkg --print\xe2\x80\xa6   100MB               \n<missing>           5 weeks ago         /bin/sh -c #(nop)  ENV NODE_VERSION=14.4.0      0B                  \n<missing>           5 weeks ago         /bin/sh -c groupadd --gid 1000 node   && use\xe2\x80\xa6   333kB               \n<missing>           5 weeks ago         /bin/sh -c #(nop)  CMD ["bash"]                 0B                  \n<missing>           5 weeks ago         /bin/sh -c #(nop) ADD file:57b431451a292755d\xe2\x80\xa6   55.3MB \n
Run Code Online (Sandbox Code Playgroud)\n

查看 IMAGE 列和第一个列正上方的条目<missing>,在本例中为 - 0e2e78467169。这是构建新镜像所依据的镜像的 ID。现在您可以列出所有图像并找到相应的图像。

\n
docker image ls | grep 0e2e78467169\n
Run Code Online (Sandbox Code Playgroud)\n

输出示例:

\n
node                         14-stretch-slim     0e2e78467169        5 weeks ago         165MB\n
Run Code Online (Sandbox Code Playgroud)\n

这个 ( node:14-stretch-slim) 是我用来构建新图像的图像。

\n