gpt4 book ai didi

jenkins - 从 jenkins 向 docker 图像添加标签

转载 作者:行者123 更新时间:2023-12-04 11:34:54 25 4
gpt4 key购买 nike

我有一个 jenkins 实例(它实际上在 docker 内部运行)用于我的持续集成。

jenkins 服务器在外部 docker 主机上构建 docker 镜像,测试它们,然后将它们推送到标记为 my-app:tested 的地方。 .

现在,当我构建一个版本时,我想将 docker 镜像从测试重新标记为 vX.X .我愿意 不是 想用新标签重建图像,我想重新标记现有图像。

如何用 Jenkins 做到这一点?我正在浏览 jenkins 插件,但找不到任何具有此功能的插件。

最佳答案

由于您没有链接到您使用的任何插件,我不能轻易说他们是否能够重新标记现有图像,但是可以通过基于 shell 的作业来实现。

如果您在 Jenkins 中使用 shell(bash 或类似的东西)脚本,您可以使用标准的 docker 命令轻松完成此操作,用于标记现有图像。如果您的 my-app:test 图像已经为您的 jenkins 构建作业在本地缓存,您可以运行:

docker login -u $USER -p $PASSWORD <myregistry.example.org>
docker pull my-app:tested
docker tag my-app:tested my-app:vX.X
docker push my-app:vX.X

如果 my-app:tested 为 jenkins 作业在本地缓存,您可以省略 docker pull命令。见 docker tag documentation想要查询更多的信息。如果这个基于 shell 命令的工作流程不适合您基于插件的构建工作流程,我不确定您会怎么做。

我个人不使用 Jenkins 或 Jenkins 插件来构建 docker 镜像,所以我不熟悉用于构建 Docker 镜像的插件在 Jenkins 中是如何工作的。其他人可能会帮助您完成基于插件的构建工作。

关于jenkins - 从 jenkins 向 docker 图像添加标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39569926/

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