jenkins 入門教程

jenkins是一個普遍用於持續構建的可視化web工具,持續構建說得更直白點,就是各類項目的"自動化"編譯、打包、分發部署。jenkins能夠很好的支持各類語言(好比:java, c#, php等)的項目構建,也徹底兼容ant、maven、gradle等多種第三方構建工具,同時跟svn、git能無縫集成,也支持直接與知名源代碼託管網站,好比github、bitbucket直接集成。php

jenkins官網地址爲http://jenkins-ci.org/,jenkins自己是用java語言開發的,因此安裝jenkins的機器至少要有jdk,另外建議git、ant、maven、gradle、groovy等工具也一併安裝好,方便與這些構建工具集成。java

 

1、安裝及啓動(本文環境爲mac os)git

直接從http://mirrors.jenkins-ci.org/war/latest/jenkins.war 下載最新的war包,而後解壓到某個固定目錄就算安裝完成了,很是方便。github

啓動方法: java  -jar jenkins.war 便可,若是要之後臺進程的方式啓動,改爲nohup java -jar jenkins.war & 便可,啓動過程當中,它會將war包解壓到~/.jenkins目錄下,並生成一些目錄及配置文件,有興趣的同窗能夠本身進入這個目錄研究一下。web

 

2、更新及下載插件shell

啓動成功後,瀏覽http://localhost:8080/ (若是不是安裝在本機,localhost請自行換成服務器對應ip)c#

 

參考上圖,進入Manage Plugins的界面,jenkins的不少功能都是藉助plugin來完成的,首次啓動時不少插件會提示已通過時,須要更新,建議升級成最新版本,同時建議安裝如下插件,以方便支持git項目及向遠程機器上傳文件及執行遠程shell命令。安全

git plugin

插件升級完後,重啓jenkins以便讓其生效。服務器

 

3、安全設置ssh

默認狀況下,jenkins容許匿名用戶作任何事情,這也就意味着誰均可以使用jenkins進行發佈,這顯然不夠安全,jenkins支持多種安全認證機制,下面演示最傳統的用戶名/密碼模式如何設置:

參考上圖,進入Configure Global Security界面

參考上圖設置,上面的設置大概意思爲採用jenkins內置的用戶名、密碼認證機制,同時容許用戶註冊,匿名用戶有管理權(首次配置時,建議容許匿名用戶有管理權限,以免操做錯誤後,沒法正常進入jenkins管理界面,等其它用戶權限都設置好之後,再去掉匿名用戶的管理權)

保存後,jenkins右上角會有一個sign up註冊連接,點擊進去,註冊一個用戶,參考下圖:

而後再進入安全設置界面:

能夠看到,用戶列表多了一個yangjm的用戶,並且有管理權限,能夠嘗試用yangjm的用戶名登陸一下,若是ok,就能夠去掉匿名用戶的管理權限了,通常狀況下,我的建議去掉容許用戶註冊的勾選(實際應用中,通常都是提早建好全部用戶名,不多容許發佈系統隨意註冊),保存後,再次訪問jenkins

就會強制只能登陸用戶才能使用了。

 

4、系統配置

在正式建立部署項目前,還有幾個關鍵參數要設置,以下圖:

 

首先是jdk

其次是ant、maven參數

若是須要打包gradle項目,gradle也要配置

對於git託管的項目,git配置是不可少的

若是部署過程當中,還須要運行shell腳本,以及經過scp向遠程機器上傳文件,則須要配置下面這些

注:上圖中紅色標1的地方,填寫的是本機的ssh私鑰證書,紅色標2的地方爲證書的訪問密碼,若是未設置證書密碼,直接留空,Root Repository Path爲遠程服務器的上傳根目錄,hostname即爲遠程服務器的機器名稱(或IP).

 

此外,還有一個強大的publish over ssh,不只能向遠程服務器上傳文件,還能遠程執行服務器上的Shell腳本,可參考下面配置

跟SCP的參數設置相似,不過這個插件多出了一個Test Configuration的按鈕,若是參數正確,點擊該按鈕後,會嘗試鏈接到遠程服務器,成功的話,會顯示Success.

相關文章
相關標籤/搜索