我们正在使用自动化Docker中心构建,以便在将新提交推送到github时自动创建我们的应用程序映像。
当我们手动更改docker hub上的标记时,这很有效。 现在我们想要的是自动创建图像标签作为git commit sha,以便我们可以在我们的kubernetes部署中提取该图像以进行滚动更新
我们想要这样的事情,
当在我们的应用程序库中推送 foo 时,
docker hub将自动构建图像,我们将在dockerhub上创建新图像
myimage:foo
我没有在docker hub上找到实现此目的的文档。如何实现这一目标?
感谢。
答案 0 :(得分:3)
在hooks/
中创建一个名为post_push
的新可执行文件,其中包含以下内容,以另一张以最新的git short哈希作为其标记的图像:
#!/bin/bash
SHORTHASH="$(git rev-parse --short HEAD)"
docker tag $IMAGE_NAME $DOCKER_REPO:$SHORTHASH
docker push $DOCKER_REPO:$SHORTHASH