如何在 Docker 集线器上的标签下判断软件版本
How to tell the software version under a tag on Docker hub
我是 docker 的新手,我正在尝试找到一种方法来判断 docker 中心标记图像的版本。
例如,此处列出的 jenkins/jenkins:lts-latest
图像 https://hub.docker.com/r/jenkins/jenkins/tags/,实际上哪个图像版本会产生别名?我如何推断 jenkins repo 中的通讯员 dockerfile/branch?
我尝试了 docker 搜索,但我做不到。我还尝试在官方 Jenkins github docker 文件回购中找到线索:https://github.com/jenkinsci/docker,但我没有看到任何 bindung 标签或任何提示我来源的线索图片
另一个例子,我有一个 Kubernetes 集群,当我检查我的 Nexus pod 时,我同样看到图像被定义为 sonatype/nexus3:latest
。
在这种情况下,至少我有 imageID: docker-pullable://sonatype/nexus3@sha256:434a2564aa64646464afaf..
但我又一次不知道如何将它映射到软件的实际版本
只要我理解您的问题,您就是在尝试使用与您的软件版本完全相同的版本来标记 docker 图像。为此,我用来创建图像标签:
$ export VERSION="2.31-b19"
$ docker tag "<user>/<image>:${VERSION}" "<docker_hub_user>/<repo>:latest"
如果不是这样。请多解释一下您的用例,以便我们为您提供更好的解决方法。
对于你问的repo,答案是否定的
在 dockerhub 上设置 repo 时,有两种选项供用户选择,如下所示:
1) 创建存储库:
这样,dockerhub只是为用户创建一个repo,用户需要在本地服务器上构建自己的镜像,打上标签,然后推送到dockerhub。
当用户将他的图像推送到 dockerhub 时,不会附加有关源版本的其他信息,因此无法从 dockerhub 获取任何源映射。
jenkins/jenkins,就是这种repo。
2) 创建自动构建
这样,dockerhub 将从 github 或 bitbucket 中获取代码,并在其云基础设施上构建映像,因此它会确切知道当前 docker 图片.
jenkins/jnlp-slave,就是这种repo。
然后,您可以在网页上点击它的Build Details,点击进入一个link,例如3.26-1-alpine
,你会看到提到的日志 0a0239228bf2fd26d2458a91dd507e3c564bc7d0
是源代码提交。
综上所述,对于你在问题中提到的repo,它们不是Automated Build
,所以你无法获得图像和源代码的地图,但如果你碰巧在docker枢纽是Automated Build
以后&想知道地图的话可以。
我是 docker 的新手,我正在尝试找到一种方法来判断 docker 中心标记图像的版本。
例如,此处列出的 jenkins/jenkins:lts-latest
图像 https://hub.docker.com/r/jenkins/jenkins/tags/,实际上哪个图像版本会产生别名?我如何推断 jenkins repo 中的通讯员 dockerfile/branch?
我尝试了 docker 搜索,但我做不到。我还尝试在官方 Jenkins github docker 文件回购中找到线索:https://github.com/jenkinsci/docker,但我没有看到任何 bindung 标签或任何提示我来源的线索图片
另一个例子,我有一个 Kubernetes 集群,当我检查我的 Nexus pod 时,我同样看到图像被定义为 sonatype/nexus3:latest
。
在这种情况下,至少我有 imageID: docker-pullable://sonatype/nexus3@sha256:434a2564aa64646464afaf..
但我又一次不知道如何将它映射到软件的实际版本
只要我理解您的问题,您就是在尝试使用与您的软件版本完全相同的版本来标记 docker 图像。为此,我用来创建图像标签:
$ export VERSION="2.31-b19"
$ docker tag "<user>/<image>:${VERSION}" "<docker_hub_user>/<repo>:latest"
如果不是这样。请多解释一下您的用例,以便我们为您提供更好的解决方法。
对于你问的repo,答案是否定的
在 dockerhub 上设置 repo 时,有两种选项供用户选择,如下所示:
1) 创建存储库:
这样,dockerhub只是为用户创建一个repo,用户需要在本地服务器上构建自己的镜像,打上标签,然后推送到dockerhub。
当用户将他的图像推送到 dockerhub 时,不会附加有关源版本的其他信息,因此无法从 dockerhub 获取任何源映射。
jenkins/jenkins,就是这种repo。
2) 创建自动构建
这样,dockerhub 将从 github 或 bitbucket 中获取代码,并在其云基础设施上构建映像,因此它会确切知道当前 docker 图片.
jenkins/jnlp-slave,就是这种repo。
然后,您可以在网页上点击它的Build Details,点击进入一个link,例如3.26-1-alpine
,你会看到提到的日志 0a0239228bf2fd26d2458a91dd507e3c564bc7d0
是源代码提交。
综上所述,对于你在问题中提到的repo,它们不是Automated Build
,所以你无法获得图像和源代码的地图,但如果你碰巧在docker枢纽是Automated Build
以后&想知道地图的话可以。