jenkins + maven + svn + tomcat 自動部署

    jenkins  是作什麼用的,若是不知道請自行google   java

    通俗的說  jenkins 能夠幫助咱們編譯發佈代碼,好比咱們提交到SVN後,要發佈運行,就能夠用過jenkins進行編譯運行linux

環境(這裏主要標註下個人環境):web

1: SVN服務器 項目檢出地址 https://192.168.1.22/svn/trunk/crm   (centos)windows

2: maven  私服    http://192.168.1.23:8080   (cnetos)centos

3: tomcat web server  http://192.168.1.24:10086   (centos)   #這個tomcat我使用的不是8080由於這個端口要讓jenkins來使用.固然這些不是固定的!!tomcat

    注: 由於我這邊是測試環境,就吧jemkins放到了tomcat web server 上.服務器

正式部署jenkinsapp

A:登陸192.168.1.24 部署jenkins  #我使用的賬號是root,你能夠用其它的.webapp

這臺機器安裝了tomcat7 和 JDK8, 主要用到了下面兩個環境變量.maven

export JAVA_HOME=/usr/local/jdk8            #環境變量

export CATALINA_HOME=/usr/local/tomcat7    

mkdir -p /usr/local/jenkins  #用來存放下載的jenkins

下載地址: http://mirrors.jenkins-ci.org/war/ 在這裏選擇安裝版本

wget http://mirrors.jenkins-ci.org/war/1.588/jenkins.war

    #我這裏下載的版本是 1.588  是14年11月更新的.  我安裝最新的版本的時候沒能正確安裝部署war到tomcat server的插件...能力問題..

執行命令  java -jar jenkins.war        #若是報相似下面的警告執行這個命令  java -Dhudson.DNSMultiCast.disabled=true -jar jenkins.war

十一月 19, 2014 4:13:12 下午 javax.jmdns.impl.DNSIncoming readAnswer 
警告: There was an OPT answer. Not currently handled. Option code: 65002 data: 6DE368DADD8543B8

通常狀況到此安裝結束.  訪問http:192.168.1.24:8080  就能出現jenkins界面  #jenkins默認使用8080  更改端口須要在執行命令的時候添加參數.

    注: 執行 java -jar jenkins.war 命令之後  在當期用戶的家目錄會生成一個.jenkins目錄,  之後建立的項目,編譯生成的war文件都在裏面. 若是剛部署好裏面應該沒有這麼多文件.

    

B: 項目的添加    #這個項目的流程 從svn檢測代碼---> 編譯----->發佈到tomcat webapps目錄.

1:點擊 左上角的"新建" 出現下面的界面

    注:爲例方便咱們的java開發人員咱們搭建了一個maven私服 , 在crm項目的pom文件裏配置了maven私服的地址,在jenkins編譯java代碼的時候遇到須要jar包回到咱們的maven私服去下載.

2:配置crm項目裏面的各項內容

    a:配置subversion  如圖

    

    選擇Subversion   配置 Repository URL   配置你svn裏面的項目,而後會提示你配置檢出項目的用戶與密碼. 其選項默認

    b:點擊 "增長構建後操做步驟" 選擇 "Deploy war/ear to a contalner"  這個選項是安裝插件之後纔有的.  安裝"Deploy Plugin"插件.

       注: 插件下載地址:http://ftp.yz.yamagata-u.ac.jp/pub/misc/jenkins/plugins/deploy/1.10/deploy.hpi  下載插件之後經過 系統管理-->管理插件-->高級 上傳插件 而後重啓jenkins( 下載地址時間長了也許會失效)

    

    c:配置有關編譯好的war目錄與tomcat的相關配置

    

    WAR/EAR files 這個裏面配置的是:相對於jenkins的workspace目錄的相對路徑.  個人全路徑是/root/.jenkins/workspace/crm/crm.adminWeb/target/crm.adminWeb.war  

    context path  /   #/ 表明的是會把crm.adminWeb.war 換成ROOT.war放到 tomcat的webapps目錄.

    tomcat的信息主要是用戶名和密碼(來自tomcat-users.xml)  還有tomcat訪問的地址http://192.168.1.24:10086 

  到此 jenkins 部署 自動檢出發佈java代碼完成... 到主界面點擊帶有綠色箭頭的圖標進行 檢出-->編譯--->發佈  以下圖   #點一下就行了...反映會有一點遲鈍.


補充: 

enkins默認會存放在用戶主目錄下的.jenkins文件夾中 #這個感受很不爽..由於jenkins目錄之後會邊的很大.....

如:Linux root用戶:/root/.jenkins

注意:這是linux版本的。windows系統請自行更改。這個值在Jenkins運行時是不能更改的. 請先將Jenkins中止運行。

若是查看當前Jenkins目錄:系統管理→系統設置→主目錄→/root/.jenkins(注意:用戶不一樣,路徑也不一樣)

 

首先移動用戶家目錄下的隱藏jenkins目錄移動到到指定的目錄下面 /storage

mv /home/.jenkins   /storage/jenkins   

Jenkins儲存全部的數據文件在這個目錄下. 你能夠經過如下兩種方式更改:

  1. 使用你Web容器的管理工具設置JENKINS_HOME環境參數.

    打開tomcat的bin目錄,編輯catalina.sh文件。
    在# OS specific support.  $var _must_ be set to either true or false.上面添加:export JENKINS_HOME="/storage/jenkins"   #你能夠指定別的目錄
    在引號中填入你的路徑。
  2. 在啓動Web容器以前設置JENKINS_HOME環境變量.

    用root用戶登陸
    編輯profile文件:vi /etc/profile
    在最後加入:export JENKINS_HOME=/storage/jenkins        #你能夠指定別的目錄
    保存,退出後執行:source  /etc/profile
    讓配置生效


最後重啓jenkins服務就OK了!!  

/usr/bin/java -Dhudson.DNSMultiCast.disabled=true -jar /usr/local/jenkins/jenkins.war&

相關文章
相關標籤/搜索