溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Jenkins中怎么利用Kubernetes 實現服務持續集成

發布時間:2021-08-10 11:29:18 來源:億速云 閱讀:264 作者:Leah 欄目:云計算

Jenkins中怎么利用Kubernetes 實現服務持續集成,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

整體流程如下圖所示:
Jenkins中怎么利用Kubernetes 實現服務持續集成
簡單分為五個過程
1、需求原型開發完成,開發人員介入開發;
2、開發人員將代碼提交到代碼倉庫 git/SVN;
3、鉤子觸發 jenkins master 啟動一次構建,或者開發人員自行點擊構建,根據情況自行選擇,jenkins 拉取代碼、maven 編譯;

這里假設你已經完成 Jenkins 安裝、遠程工具、java 編譯環境配置等。如果沒有配置,網上找找,資料特別多。這部分其實相對來說和之前使用Jenkins 的方式區別不大,如果你使用 git,這里還是 git 拉取代碼,之前是 maven/ant 進行打包,那么這里還是 maven/ant 進行打包。
Jenkins中怎么利用Kubernetes 實現服務持續集成  
4、docker 鏡像構建、鏡像提交到倉庫;
docker 鏡像在構建需要區別與以前的形式,如果你已經在 Jenkins 上安裝了 docker 插件,直接在當前機器構建即可,如果沒,也沒問題,遠程 SSH 到一臺能夠構建 docker 鏡像的服務器進行鏡像打包。

docker build -t docker.hub.com/dev/tomcat-webapps:$version .docker push docker.hub.om/dev/tomcat-webapps:$version
打包過程需要注意兩點
  • 第一點,docker 構建鏡像需要 tag ,這個 tag 可以通過 Jenkins 參數化構建,在構建之前輸入版本號,如果沒有輸入,填寫默認值即可。

  • 第二點、歷史鏡像如何處理?比較建議每次鏡像構建完成之后,通過  Jenkins 配置命令刪除沒有運行的鏡像。

    具體根據使用場景處理這些中間產物。


docker rm $(docker ps -a -q)

5、Kubernetes yaml 運行過程到倉庫拉取 docker 鏡像構建產物,從而啟動整個服務,測試人員開始全方位功能、性能測試。
kubectl apply -f config.yamlsed -i 's/image-replace-webapps/tomcat-webapps:${version}/'  tomcat_deployment.yaml;kubectl apply  -f  tomcat_deployment.yaml
Jenkins中怎么利用Kubernetes 實現服務持續集成

3、在構建過程中需要注意問題

docker 每次鏡像構建 tag 不一樣,如何傳遞到 k8s yaml中?

docker 鏡像構建過程中通過參數化構建已經可以修改版本號,同樣的,首先在 k8s 編排文件鏡像部分添加能夠已知占位符;

然后把這個版本號動態傳遞并替換到 k8s yaml 中;

sed -i 's/image-replace-webapps/tomcat-webapps:${version}/'  tomcat_deployment.yaml;

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女