Docker Hub Automated Build with GitHub
2018-01-17 11:48
309 查看
Github授权给DockerHub
在Github中新建组织[首页->+号->New Organization]配置DockerHub可以访问到此组织[首页头像->Setting->Applications->Authorized OAuth Apps选项卡->点击Docker Hub Registry->将上一步创建的组织授权给Docker Hub Registry]
DockerHub中,首页Create菜单->Create Automated Build->选择Github选项卡,此时左边就能看到Github Users/Organizaitons 了,右边是对应的Github Users/Organizaitons下的仓库
Congirue Automated Build
思路就是使用Github提供的webhook功能;下面以kubernetes-dashboard-ppc64le为例1. 在Github中创建kubernetes-dashboard-ppc64le仓库
2. 在DockerHub中,按照上一部分的第三步的操作,选择刚刚创建的kubernetes-dashboard-ppc64le仓库,选择完之后,进入到如下的界面
点击下面的click here to customize链接
这里有两条默认的配置,第一条的意思是,将此仓库的master分支,打成latest tag;第二条的配置的意思是监控词仓库所有的除了master之外的分支,生成的镜像的tag是branch的名字;这个配置功能还算灵活,大家可以根据自己的情况配置,下面是我的配置:
第一条配置上边说过了,第二个配置的意思是监控所有的tag,生成对应git tag名称的docker tag的docker镜像;
3. 点击创建按钮,进入到dockerhub特定docker镜像的主页;这一步要配置dockerhub监听仓库的代码变更,点击Build Settings选项卡,最下面Build Triggers部分,生成webhook地址和token
4. Github,仓库主页,点击settings选项卡,左侧Options菜单列表,选择Webhooks菜单,点击Add Webhook按钮,将在Dockerhub中生成的Trigger Url填写到Github的Payload Url中,将Dockerhub中的Trigger Token填写到Github中的Secret中,在Github中提交表单,完成Dockerhub监听Github仓库的代码变更配置;
测试
git clone https://github.com/googlecontainers/kubernetes-dashboard-ppc64le.gittouch Dockerfile,内容如下
FROM gcr.io/google_containers/kubernetes-dashboard-ppc64le:v1.8.0
git commit -m ‘v1.8.0’
git tag v1.8.0
修改Dockerfile内容如下
FROM gcr.io/google_containers/kubernetes-dashboard-ppc64le:v1.8.1
git commit -m ‘v1.8.1’
git tag v1.8.1
修改Dockerfile内容如下
FROM gcr.io/google_containers/kubernetes-dashboard-ppc64le:v1.8.2
git commit -m ‘v1.8.2’
git tag v1.8.2
git push –tags
查看dockerhub中项目主页,点击build details选项卡,可以看下如下类似的内容:
刚刚提交,Status全是Queued,稍等一会,就会变成Buildding,Buildding完了,就能在此项目主页的Tags选项卡里看到打包后的镜像了;
镜像构建的结果会在这里显示出来
这时候我们看tags选项卡里,已经是按照我们的要求打好的镜像了
相关文章推荐
- Automated Builds on Docker Hub
- 安装scrapy报错 error: Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++ Build Tools": http://landinghub.visualstudio.com/visual-cpp-build-tools
- error: Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++ Build Tools": http://landinghub.visualstudio.com/visual-cpp-build-tools
- Build Your Own PaaS with Docker.pdf
- [Docker] Build a Simple Node.js Web Server with Docker
- 【云计算】Docker build解决父镜像层级关系过多问题:Cannot create container with more than 127 parents
- error: Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++ Build Tools": http://landinghub.visualstudio.com/visual-cpp-build-tools
- KEIL在Build的时候提示Error:L6406E:No space in execution regions with .ANY selector matching 错误
- Assertion failure in -[UITableView _dequeueReusableViewOfType:withIdentifier:], /BuildRoot/Library/C
- iOS开发之Your build settings specify a provisioning profile with the UUID “”, however, no such provisio
- *** Assertion failure in -[UITableView dequeueReusableCellWithIdentifier:forIndexPath:], /BuildRoot
- 项目管理实践【五】自动编译和发布网站【Using Visual Studio with Source Control System to build and publish website automatically】
- [Angular] Setup automated deployment with Angular, Travis and Firebase
- Play-With-Docker在chrome上的插件
- You need to run build with JDK or have tools.jar on the classpath.
- Tartu大学计算机科学系计算神经学小组的学者在robohub网站发表文章,阐述了他们对DeepMind人工智能算法的复现。Playing Atari with Deep Reinforcement.
- 项目管理实践【五】自动编译和发布网站【Using Visual Studio with Source Control System to build and publish website autom
- vxl cannot build with share libs
- FAILURE: Build failed with an exception
- 【angular】gyp ERR! build error msbuild.exe` failed with exit code: 1