Jenkins詳細安裝與構建部署使用教程
Jenkins是一個開源軟件項目,旨在提供一個開放易用的軟件平臺,使軟件的持續集成變成可能。Jenkins是基于Java開發的一種持續集成工具,用于監控持續重復的工作,功能包括:
1、持續的軟件版本發布/測試項目。
2、監控外部調用執行的工作。
本文使用的Linux:Ubuntu
其中JDK、Tomcat、SVN服務器請看這里Ubuntu安裝配置JDK、Tomcat、SVN服務器
一、安裝Jenkins
本文直接使用war包安裝
?
war包有兩種安裝方法
方法一
下載jenkins.war, 拷貝到D:JavaTooljenkins()下,然后運行java -jar jenkins.war. (注意需要先安裝JDK,然后設置JAVA_HOME環境變量且將%JAVA_HOME%in加入到PATH環境變量中)
運行如下:
?
訪問http://localhost:8080 , jenkins的主界面如下:
?
方法二
把Jenkins 1.409.1版解壓,把得到的war包直接扔到tomcat下,啟動tomcat,Jenkins就安裝完畢,訪問http://localhost:8080
二、構建一個Maven項目
1、新建一個job
?
2、輸入名稱和項目類型
?
3、設置編譯的版本號等信息
?a
4、設置svn庫地址:
輸入項目托管的svn的地址,如果有出現要輸入賬號和密碼的地方,輸入即可。
?
如果有出現如下說明用戶或密碼不對:
點擊進去重新設置用戶和密碼
5、配置jdk和maven
第一次打開出現如下,點擊進去。要求提示設置JDK和Maven
?
點擊系統管理->系統設置,找到JDK和Maven的設置位置
選擇本電腦的:
?
9、到這里已經可以構造這個項目了。
點擊構建
構建輸出的信息:
?
構建成功輸出如下 :
10、驗證
這時它已經自動把這個項目打包了一個war包,默認打包到了C:Userslinbingwen.jenkinsworkspaceJavaWebJavaWeb arget
?
或者點擊如下:
?
三、自動遠程部署到tomcat
接下來要完成自動構建成war包后,將些war包上傳到遠程linux的tomcat的webapps目錄,更新項目的war包,并重啟tomcat.
1、安裝插件
系統管理->管理插件,在可選插件里找到下面這個,然后點擊直接安裝命令,安裝成功后要重啟jenkins
?
t筆者在安裝插件時報錯如下:
?
這應該是天朝的墻所導致的,所以筆者就使用了手動安裝的方式。
解決方法:
手動安裝
到https://wiki.jenkins-ci.org/display/JENKINS/Publish+Over+SSH+Plugin,下載hpi到本地電腦到
?
在系統管理--管理插件--高級--瀏覽-上傳插件即可
?
然后它自動上傳并安裝:
紅色的是筆者在線安裝不成功的,藍色的是筆者安裝成功的了,之后重啟jenkis即可。
2、配置ssh內容:
在系統管理->系統設置里
找到Publish over SSH
然后輸入:
?
3、配置Post Steps
這里還是接著上面的JavaWeb項目,這個配置得安裝了上面的插件后才會顯示!
?
其中,
Transfer SetSource files:表示要上傳的本地的war包及路徑,可到工作空間去看
Remove prefix:表示要上傳時要去除的文件夾,即只上傳war包
remote driectory:即表示執行時的路徑,相當于把war包上傳到這里了
exec commad:要執行的命令
要執行的腳本的內容:
#!/bin/sh
#defined
TOMCAT_HOME=“/usr/java/tomcat/apache-tomcat-7.0.67/”
ID=`ps -ef | grep java | grep tomcat|awk ‘{print $2}’`
echo $ID
echo “kill tomcat”
kill -9 $ID
echo “remover war file”
cd “$TOMCAT_HOME”/webapps
rm -rf JavaWeb-0.0.1-SNAPSHOT
rm -rf JavaWeb-0.0.1-SNAPSHOT.war
echo “copy war to webapp”
cd /home/lin
cp JavaWeb-0.0.1-SNAPSHOT.war “$TOMCAT_HOME”/webapps
cd “$TOMCAT_HOME”/bin
echo “start tomcat”
。/startup.sh
步驟:
先停掉tomcat
刪除webapp下對應的war包
復制war到webapps
重啟tomcat
4、構建部署
點擊項目的構建按鈕,最終出現如下:
?
在linux上打開瀏覽器,輸入http://localhost:8080/JavaWeb-0.0.1-SNAPSHOT/
?
注意:這里配置的ssh用戶:lin要有root的權限,要不可以會報錯沒有權限執行kill 或rm 命令
本文使用的Linux:Ubuntu14.04
評論
查看更多