基於jenkins+kubernets+docker的持續化集成

項目實現效果,開發人員在gitlab上傳代碼,一鍵部署下去,全部web容器統一更新代碼,git

服務器數量:兩臺jenkins作高可用,十八臺服務器作docker容器的web服務器。web

架構運行思路:gitlab上更新了代碼之後,經過webhook檢測到gitlab上有變更,而後將給本機的jenkins傳送一個回執,執行任務,任務內容是進行代碼pull到本機中而後經過腳本命令把代碼轉移到本機的nfs目錄中,而後經過jenkins上的nfs掛載到全部web容器的宿主機上,並將宿主機的掛載目錄映射到容器裏面的網頁根目錄中實現了一鍵自動部署環境。docker

架構生存時間:jenkins作了高可用實現了不間斷工做,docker使用腳本形成了容器自啓的效果。服務器

架構圖:架構

順序: 發開人員→gitlab→jenkins→registry→kubernetes→dockergitlab

思路:從開發人員上傳代碼到gitlab託管代碼之後,jenkins自動pull下來而後作成鏡像上傳至registry私有倉庫,同時發指令給kubernetes使他關閉舊容器,而後從新啓用新的docker鏡像並作成容器對外提供服務。具體操做步驟詳見本人有道雲筆記:3d

1.jenkins部署開發

http://note.youdao.com/noteshare?id=a3c643c5c07c35f7ad00d39ea6e0940c&sub=86FEF5261F92480D94462D90BB306919部署

2. jenkins服務安裝詳解get

http://note.youdao.com/noteshare?id=3f2998ef0099a0d35fc5942fc0acb6bb&sub=EFC2E4BC50D0452A822A8E3459A07F5C

3.jenkins-keepalived

http://note.youdao.com/noteshare?id=1f38bfbcb85a9bd2a216174fa19afcb4&sub=413FD3408B32428AA3CA9535EDF2FC4F

4.web端-docker容器

http://note.youdao.com/noteshare?id=6e029d91716c1c1b581c1fb0854936db&sub=663A2B77DFFE4F0CBDED17E8893D68F2

6.kubernets集羣安裝

http://note.youdao.com/noteshare?id=945e7fd37c2953a3dacaab0452bd522f&sub=E1A200E23E7348C6A2E7DDF6A189BB67

7.總體架構部署

http://note.youdao.com/noteshare?id=9fbb1e70069c5a36d98bad49ab235e7a&sub=D2605154F6A64B4F981C136E70BF5322

相關文章
相關標籤/搜索