Jenkins使用docker構(gòu)建
Jenkins master要將構(gòu)建任務(wù)分配給Docker,就必須在Jenkins agent上安裝Docker。建議給這些agent打上docker的標(biāo)簽。
在Jenkins agent上安裝Docker注意
要將 Jenkins agent 的用戶加入Docker的用戶組中,這樣Jenkins agent不需要加sudo就能執(zhí)行docker命令。如果不生效,則可能需要重啟Jenkins agent。
使用Docker構(gòu)建
pipeline插件從2.5版本開始就內(nèi)置了Docker插件

與之前不同的,在agent部分我們將node換成了docker。下面分別解釋docker的常用選項。
? label(可選):字符串類型,與node的label的作用一樣。
? image:字符串類型,指定構(gòu)建時使用的Docker鏡像。
? args(可選):字符串類型,Jenkins執(zhí)行docker run命令時所帶的參數(shù),如args'-v/tmp:/tmp'。
? alwaysPull(可選):布爾類型,強制每次執(zhí)行docker pull命令時都重新拉取鏡像。
配置Docker私有倉庫
Docker拉取鏡像時,默認是從Docker官方中心倉庫拉取的。那么如何實現(xiàn)從私有倉庫拉取呢?
Docker插件為我們提供了界面操作,具體步驟如下:
進入Manage Jenkins→Configure System頁面,找到“Pipeline Model Definition”部分

? Docker Label:當(dāng) pipeline 中的 agent 部分沒有指定 label 選項時,就會使用此配置。如docker {image'maven:3-alpine'}。
? Docker registry URL:Docker私有倉庫地址。
? Registry credentials:登錄Docker私有倉庫的憑證。