如何将docker hub自动构建标记为git sha

sla*_*hul 14 tags github docker dockerhub

每当将新提交推送到github时,我们都会使用自动Docker hub构建来自动创建应用程序映像.

当我们手动更改docker hub上的标记时,这很有效.现在我们想要的是自动创建图像标签作为git commit sha,以便我们可以在我们的kubernetes部署中提取该图像以进行滚动更新

我们想要这样的东西,当在我们的应用程序库中推送commit foo时,docker hub将自动构建映像,我们将在dockerhub上创建新映像as myimage:foo

我没有找到在docker hub上实现这一目标的文档.怎么能实现这个目标?我们在dockerhub上只有两个选项,即tag,branch

谢谢.

Her*_*oCC 6

建立一个新的可执行文件hooks/名为post_push这些内容推另一个图像与最新的git短哈希作为其标签:

#!/bin/bash

SHORTHASH="$(git rev-parse --short HEAD)"
docker tag $IMAGE_NAME $DOCKER_REPO:$SHORTHASH
docker push $DOCKER_REPO:$SHORTHASH
Run Code Online (Sandbox Code Playgroud)

  • 为什么不使用内置的 $SOURCE_COMMIT 而不是专门的 $SHORTHASH 代码? (2认同)