.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提交代碼時自動觸發構建動作並打包為鏡像的功能。現在,距離正式使用還差一步:分發。我會在後面的文章介紹如何自動分發到單機、集群。