介紹
當下最熱門的技術(shù)當屬以docker為代表的容器技術(shù),rancher是用來管理docker的一個平臺,可以在rancher上對docker進行監(jiān)控,發(fā)布,編排,升級,負載均衡等。和docker命令行操作比起來,rancher全都是可視化操作,學習成本極低,通過rancher可以非常方便對docker進行管理。
通過rancher發(fā)布的應(yīng)用,就很有必要跟jenkins進行集成,實現(xiàn)整個pipeline的完整性。本文介紹如何在jenkins中集成rancher,達到自動發(fā)布自動升級的目的。
rancher 最近進行大版本升級,目前最新版本為rancher 2.0 beta 4,該版本bug還比較多,暫不考慮應(yīng)用生產(chǎn)環(huán)境,本次使用環(huán)境為rancher 1.6
實現(xiàn)
- 登陸
rancher->API->密鑰->添加賬號API Key生成一個api key。輸入名稱后會生成一個Access Key (用戶名)和Secret Key (密碼)。記下這兩個的值,后面會用到,而且Secret Key如果不記下來后面就無法從界面獲取。 - 登陸jenkins在插件管理器里搜索
rancher安裝rancher插件
rancher.png - 創(chuàng)建job,可以在
pre Steps和post Steps階段都可以添加rancher構(gòu)建,這里以post Steps為例
rancher
配置rancher.png
下面解釋下這幾個參數(shù)
API Endpoint:rancher api地址,可以在以下地方找到
API Endpoint.png
Rancher API Key:點擊Add添加新的賬號
Rancher API Key.png
username為第一步獲取的Access Key
password為第一步獲取的Secret Key
id和Description不重要可以隨意填
Rancher Environment Id:環(huán)境id,可以在rancher管理界面環(huán)境管理中獲取
Service Name:格式為基礎(chǔ)設(shè)施名稱/服務(wù)名稱,下圖就是基礎(chǔ)設(shè)施名稱
點擊進去就是各個服務(wù)名稱
Docker Image:容器名稱,可以使用jenkins變量做動態(tài)構(gòu)建
至此,jenkins上構(gòu)建完就可以調(diào)用rancher api進行容器發(fā)布和升級。
結(jié)語
jenkins和rancher的集成相對還是比較簡單,就是官方文檔寫的有點簡略,沒有解釋各個參數(shù)從哪里取,真心覺得,官方能在文檔上多寫幾個字可以讓用的人少走很多很多彎路。







