標籤:文本 mave svn 過程 manage index webapp new plugin
1.下載jenkins
地址:https://jenkins.io/index.html
本人下載了2.19.3版本的war包:jenkins.war
2.安裝jenkins
拷貝jenkins.war到tomcat的webapps檔案夾下,如果tomcat是啟動的,jenkins項目會自動解壓啟動的,如果tomcat是停止的,需要啟動tomcat服務,進入bin檔案夾,linux環境下執行 ./startup.sh即可啟動服務,windows下雙擊startup.bat即可。
然後,訪問地址:http://192.168.17.155:8080/jenkins ,具體ip為你部署的機器的ip, 看到如下介面,那麼恭喜你,jenkins啟動了。
為了安全,jenkins要求你填寫初始化密碼,密碼在提示的檔案裡面,找到該檔案,拷貝出密碼,填寫在下面的文字框中,點擊Continue即可。(如果windows下,tomcat的控制台也能看到提示的密碼,linux下查看tomcat的catalina.out這個記錄檔中也能找到此密碼。)
選擇安裝方式,選擇第一種即可,點擊一下,進入如下介面
各種外掛程式安裝完後,開始設定賬戶資訊,以後用此賬戶登入jenkins
然後進入首頁
3.安裝外掛程式
上述預設安裝的外掛程式還不夠
依次點擊 系統管理->外掛程式管理-> 可選外掛程式-> 過濾搜尋方塊中 尋找如下外掛程式:
Maven Integration plugin
SSH plugin
Deploy to container Plugin
4.建立構建任務
找到代碼管理的地方,如果是svn管理的,請選擇Subversion,填入項目地址和帳號資訊,如果是git,填寫git資訊即可
構建觸發器,去掉所有勾選,採用手動點擊觸發即可
上述資訊提示配置一下maven的安裝路徑,我們照做即可,順便配置好jdk路徑
maven構建命令配置
部署配置
tomcat使用者在conf/tomcat-user.xml裡面配置即可,下面給出配置
<tomcat-users> <role rolename="manager-gui" /> <role rolename="manager-status" /> <role rolename="manager-jmx" /> <role rolename="manager-script"/> <role rolename="admin-gui"/> <role rolename="admin-script"/> <user username="tomcat" password="tomcat" roles="manager-gui,manager-status,manager-jmx,manager-script,admin-gui,admin-script"/></tomcat-users>
儲存配置
5.構建
點擊導航jenkins -> My Views -> 點擊study項目-> 立即構建
如果發現介面卡死,可能是jdk記憶體溢出,出現如下
設定一下tomcat的jdk參數即可,在catalina.bat 檔案裡添加如下參數,linux系統為catalina.sh檔案
JAVA_OPTS="-server -XX:PermSize=256M -XX:MaxPermSize=1024m -Xms512M -Xmx1024M -XX:MaxNewSize=256m"
重新啟動tomcat,重新點擊構建即可,在Console Output裡可以看到整個構建的過程,出現如就表示整個構建部署成功了
6.附上shell腳步部署方式,更加靈活些(jenkins和伺服器必須都是linux機器)
思路就是,執行遠程指令碼關閉tomcat,然後執行本地指令碼拷貝檔案到遠程,再執行遠程指令碼啟動tomcat服務。上述scp命令傳輸檔案不用密碼,必須配置一下ssh的金鑰組,配置方式如下:
這裡假設主機A(192.168.100.3)用來獲到主機B(192.168.100.4)的檔案。
在主機A上執行如下命令來產生配對密鑰:
ssh-keygen -t rsa
遇到提示斷行符號預設即可,公開金鑰被存到使用者目錄下.ssh目錄,比如root存放在:
/root/.ssh/id_rsa.pub
將 .ssh 目錄中的 id_rsa.pub 檔案複製到 主機B 的 ~/.ssh/ 目錄中,並改名為 authorized_keys,
到主機A中執行命令和主機B建立信任,例(假設主機B的IP為:192.168.100.4):
scp ~/.ssh/id_rsa.pub 192.168.100.4:/root/.ssh/authorized_keys
下面就可以用scp、ssh命令不要求輸入密碼來擷取主機B的檔案了
ssh 192.168.100.4 斷行符號就不要求輸入密碼了。
使用jekins自動構建部署java maven項目(jdk1.7+tomcat7.0+jenkins2.19.3)