Docker Hub结合Github自动化构建镜像

  • 让Github与Docker Hub进行绑定
Docker Hub->Create->Create Automated Build
第一次进行该步骤需要Github的授权。会自动跳到Github同意授权即可。

  • 在Github上创建一个Docker构建项目,在里面实现Dockerfile。
该步骤可以在本地完成,然后提交到自己的Github仓库中。

  • 然后继续进行第一个步骤,在右侧选择Github中的构建仓库:

  • 推送更新,自动构建
每当Dockerfile有新的修改推送到Github的构建仓库中时,在Docker Hub这里就会进行自动构建。

  • 基于tag的推送
在默认的构建中,每推送一次代码,构建的都是全新的latest版本的构建。不方便对镜像的版本控制。
最好的方式是:基于push的提交构建出latest版本镜像,基于tag的提交构建出指定版本的镜像。
首先在Docker Hub中设置这两种构建方式:


这里需要设置两种方式,当把新的commit推送Github时,Branch那里就会被触发,构建出一个latest版本。当把新的tag推送到Github时,Tag那里就会被触发,构建出一个tag版本。

  • 推送tag到Github
【首先别忘了add、commit、push代码。然后再去做tag的事情】
执行以下git命令推送一个tag到Git服务器:

对最新的一次commit打个tag,tag的版本为1.6   . 到时候构建出来的镜像的版本也是1.6
git tag -a 1.6 -m “message"

推送本地的tag到远程。
git push origin --tags

完成以上步骤后,Docker Hub就会分别基于代码的提交和tag的提交,分别构建两次。两次构建出来的版本分别是latest、1.6 。

通过这种自动构建的方式,我们就不需要手动“docker build”方式构建镜像了,也不用手动的维护镜像的版本号。当然在推送Dockerfile时,最好都是能在本地测试通过的。之后的版本、镜像控制就交给Git和Docker Hub了。这样我们在任何机器上都可以非常快速的从Docker Hub拉取镜像了。

  • 案例
Tomcat-CentOS镜像Docker hub地址:https://hub.docker.com/r/chenyufeng/tomcat-centos/

发布了700 篇原创文章 · 获赞 1462 · 访问量 356万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: Age of Ai 设计师: meimeiellie

分享到微信朋友圈

×

扫一扫,手机浏览