容器平臺自動化CI/CD流水線實操

CI/CD————(實操說明)git

 

CI/CD

持續集成(Continuous Integration, CI):  代碼合併,構建,部署,測試都在一塊兒,不斷地執行這個過程,並對結果反饋。docker

持續部署(Continuous Deployment, CD): 部署到測試環境、預生產環境、生成環境。 maven

持續部署(Continuous Delivery, CD):  將最終產品發佈到生成環境、給用戶使用。測試

 

 

 

 

 

Jenkins與容器技術CI/CD實戰

 

 

說明:這張圖稍微更形象一點,上線以前先把代碼git到版本倉庫,而後經過Jenkins 如Java項目經過maven去構建,這是在非容器以前,典型的自動化的一個版本上線流程。那它有哪些問題呢?spa

如:它的測試環境,預生產環境,測試環境。會存在必定的兼容性問題 (環境之間會有必定的差別)blog

 

容器化CI/CD

 

說明:它這裏有一個docker harbor 的鏡像倉庫,一般會把你的環境打包爲一個鏡像,經過鏡像的方式來部署。生命週期

 

Jenkins與Docker的自動化CI/CD流水線實踐

Pipeline 有諸多優勢,例如:ip

  • 項目發佈可視化,明確階段,方便處理問題
  • 一個Jenkins File文件管理整個項目生命週期
  • Jenkins File能夠放到項目代碼中版本管理

Jenkins管理界面部署

 

操做實例:Pipeline的簡單使用kubernetes

 

 

 

 

這裏是比較重要的核心,構建流程

點擊保存以後,當即構建

 

映像中普通Jenkins構建方式步驟:

 

 而pipeline 的構建流程:

 pipeline有諸多優勢:

  • 項目發佈可視化,明確階段,方便處理問題
  • 一個Jenkins File 文件管理整個項目生命週期
  • Jenkins File 能夠放到項目代碼中版本管理

一個Jenkins file 維護一個生命週期,就像寫代碼同樣,只維護這個file文件就能夠了。

 

 

 

 

 

小結:

Jenkins與kubernetes搭建CI/CD流水線有諸多好處:

  • Jenkins高可用
  • 自動伸縮
  • 環境隔離
  • 易維護
相關文章
相關標籤/搜索