.NET 微服务——CI/CD(2):自动打包镜像

准备工作

一、开启docker的tcp

我的服务器是linux,以端口2376为例,找到docker.service,在ExecStart下新增这段代码即可:

-H tcp://0.0.0.0:2376 -H unix:///var/run/docker.sock

效果图:

然后重载服务列表,重启docker,语句:

systemctl daemon-reload

systemctl restart docker

二、Jenkins安装Docker插件

在插件管理搜索安装docker:

 

 

只需选择这一个,关联的Docker API、Docker Commons会自动下载。

配置Docker

打开系统管理→系统配置,翻到最下面,进入单独设置页面:

在页面新增docker:name随意,地址要注意tcp不是http,最后注意勾选enabled。页面有个测试按钮,填好信息点它,测试通过会打印docker和docker api的版本:

配置工作流

翻出我在上一篇文章创建的工作流,进入配置页,找到构建这一项,添加构建步骤:

在新窗口填写dockerfile的路径、打包以后的镜像名称,以及选择刚才配置好的docker cloud:

填好以后保存,节省时间,手动触发测试一下(通过git提交触发一样):

等待构建结束,在服务器中查看刚才自动构建的镜像:

自动打包,Get~

小结

如果看完这两篇文章并且跟着走一遍,应该已经实现了从Jenkins搭建、到集成Gitee+Docker、最终实现Git提交代码时自动触发构建动作并打包为镜像的功能。现在,距离正式使用还差一步:分发。我会在后面的文章介绍如何自动分发到单机、集群。