Jenkins+Git+Docker+K8s部署


准備工作

  1. Jenkins已安裝
  2. Docker和K8s部署運行成功
  3. 代碼管理工具使用Git

最近公司項目使用Jenkins+Git+Docker+K8s進行持續化構建部署,這里筆者整理了一下構建部署的相關操作,以便留存查看。

項目和工具介紹

這里有兩個項目:前端和后台,同樣都是使用Git代碼管理工具,目前是使用所謂的微服務進行發布操作,結合Docker和K8s進行部署發布。

部署步驟

傳統的服務發布步驟:

  1. 拉取最新的代碼
  2. 使用ant或其他工具編譯項目代碼
  3. 將編譯的項目代碼(有些配置文件是不變的,需要覆蓋),打包上傳到tomcat或glassfish部署
  4. 重啟服務

而使用jenkins之后,我們只需要鼠標輕輕一點,即可完成1-4的操作;省時省力,縮短了我們的構建時間,使得錯誤率大大降低。其中jenkins還可以根據項目實際情況,進行定時構建。

jenkins詳細部署

新建項目-Genenral

我們首先新建一個自由風格的項目,設置項目的名稱,然后進行項目設置詳情基礎頁面,如圖

如上圖所示:在Gnenral中設置了項目的基本描述、構建結果保存以及參數化構建過程,其中[丟棄舊的構建]:是保存N次構建結果信息,而參數化構建,這里是直接獲取Git的分支進行構建。這里使用的是插件[Git Parameter]進行參數化構建,首次使用需安裝此插件。

丟棄舊的構建:即保存最近N次的構建結果,查看如圖

參數化構建:獲取Git分支進行構建部署,如圖

源碼獲取:Source Code Management

拉取最新的代碼信息,這里使用的工具是Git,配置具體如圖

這里配置了Git的URL地址以及使用的賬號信息,其次還有就是拉取的分支信息,Git工具默認使用Jenkins自帶的版本即可。

構建-Build

前端項目

這里執行構建的時候,前端項目使用的是shell執行命令,使用的命令如下

cd $WORKSPACE
yarn install --ignore-engines
yarn build

前端項目部署需要先執行此問題,具體的項目有不同的執行命令,如圖

后端項目

而一般后台,使用的是Maven進行構建的,編譯命令如下

clean install -U -Pbeta -e

如圖

Build-Post Steps

前面說過此項目是微服務搭建的,使用到了Docker和K8s,這里就用到了Docker。

先上圖:

這里使用Docker有三個步驟

  1. 創建image:Creat image,說明是使用哪個分支
  2. 推送image至服務器:Push image
  3. 刪除原來的image:Remove image

重啟服務

這里是使用Kubernetes進行服務的重啟和發布,命令如下

kubectl patch deployment 項目名稱 -p \
  "{\"spec\":{\"template\":{\"metadata\":{\"labels\":{\"date\":\"`date +'%s'`\"}}}}}"

具體執行命令信息可以參考運維或開發人員的腳本,如圖

至此,使用Jenkins+Git+Docker+K8s完成了項目的部署,接下來進行構建的時候,可以直接點擊[Build with Parameters]拉取不同的分支進行項目構建部署,如圖

這里只說明了的Docker和K8s如何配合Jenkins如何使用,更詳細的使用方法和命令可以自行百度


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM