gpt4 book ai didi

docker - 如何让 Docker 集线器对 "latest"和 "vX.Y"使用相同的图像?

转载 作者:行者123 更新时间:2023-12-01 00:41:16 26 4
gpt4 key购买 nike

Docker Hub 搭建 Syncthing image为我来自 this source repo .

我标记了 latest commit v0.13.5,但 Docker 构建了两次:once for latest once for v0.13.5 .

为什么?它不应该能够弄清楚来源是相同的吗?我只是在我的 Dockerfile 中做了一些愚蠢的事情吗? ,打破缓存?我是否需要通过某种方式向 Docker Hub 提示这真的应该是两个具有相同校验和但标签不同的图像?

我在想两个 Docker 镜像标签 latestv0.13.5就像两个 git 标签都指向同一个提交。 Docker Hub 不应该也这样工作吗?如果有人试图拉 latest他们会拉出完全相同的图像,标记为 v0.13.5 ?我知道如何拉/重新标记/推送,但同样,似乎必须有某种方法让 Docker Hub 自动执行此操作。

Build settings :

screenshot of meonkeys/syncthing build settings

最佳答案

有了一点魔法,Docker Hub 就可以做到这一点! Pablo Chico de Guzmán helped me out .

脚步:

  • 添加一个名为 hooks/post_push 的文件
  • 制作 hooks/post_push可执行、提交和推送
  • 删除“分支”构建,但保留“标记”构建

  • 现在,我推送的任何标签(例如 git push --tags )都会触发自动构建,并且相同的图像也被赋予 latest标签。

    Here's the change I had to make所以最近的“vX.Y”标记 meonkeys/syncthing图像也被标记 latest .

    screenshot of Docker Hub build settings for my syncthing image

    关于docker - 如何让 Docker 集线器对 "latest"和 "vX.Y"使用相同的图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37650119/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com