jenkins搭建自動化部署平台(svn+tomcat重啟)


原文鏈接:http://blog.csdn.net/zjs40/article/details/51818322

 

jenkins 自動化部署和集成代碼的平台

可以將Git svn 上的代碼 checkout 然后重新部署服務器,節省開發測試的效率

一、https://jenkins.io/index.html 下載jenkins包(war包)

二、下載完war包   在服務器上最好新建一個tomcat專門用來做jenkins啟動的   修改一下server.xml

   文件中修改   :

(1) 修改http訪問端口(默認為8080端口 ,修改成不常用的端口,以免沖突)
    <Connector port="8080" maxHttpHeaderSize="8192" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true" />將8080修改為第一個tomcat不在使用的端口號。此處所設的端口號即是以后訪問web時所用的端口號。  8888

(2) 修改Shutdown端口(默認為8005端口,防止多個tomcat端口沖突起不起來)
       <Server port="8005" shutdown="SHUTDOWN">
      將8005修改為沒有在使用的端口號,例如8088  

(3) 修改JVM啟動端口(默認為8009端口)    
     <!-- Define an AJP 1.3 Connector on port 8009 -->
    <Connector port="8009"
               enableLookups="false" redirectPort="8443" protocol="AJP/1.3" />

修改后啟動tomcat就輸入

http://服務器ip:端口號/jenkins 就可以看到jenkins的界面了

進入jenkins會有個等待頁,讓你輸入驗證碼 (會給你一個服務器的路徑)照着服務器路徑 找到initialAdminPassword文件( /root/.jenkins)把里面的內容復制到頁面輸入

就可以進入

接着是配置jenkins登陸的賬號密碼和下載插件

到這里 jenkins就算是安裝成功了

接下去是jenkins配置從svn拉取代碼 到tomcat底下進行部署

一、新建一個項目

 

 

二、

選擇一個自由風格的軟件項目並且命名進入

 

三、

 

選擇源碼管理,這里是從svn項目檢出的 所以選擇subversion



Repository URL :這里填寫的是點擊構建jenkins會從這個地址下把里面的文件檢出 Local module directory 配置的路徑下的workspace 中

Credentials :這里配置一下svn的 賬號密碼 

Local module directory 一般配置  ./構建的項目名(/root/.jenkins/jobs/你建的構建任務/workspace/構建的項目名)

最后構建后的項目在./構建的項目名(/root/.jenkins/jobs/你建的構建任務/workspace/構建的項目名) 目錄下

這樣 從svn拉取代碼就配置成功了

 

 

三、因為我的項目是web項目

所以拉取代碼后要部署到tomcat並且重啟

這時候

選擇構建步驟

如果是還需要用ant構建一下web項目可以先選擇invoke ant配置

我是從本地構建好的web項目 所以構建步驟只選擇execute shell

在command里面寫你需要在jenkins把svn的代碼拉取到jenkins的jobs目錄下需要做的事

 

這里就有三個步驟  一個是將web項目 移到tomcat下的webapps目錄下

shutdown tomcat

startup tomcat

成功

 

BUILD_ID=DONTKILLME  (加這個原因是因為沒加之前用command startup tomcat一直啟動失敗而shutdown卻是成功的   原因是因為jenkins啟動后的進程會被kill掉

所以要加這句,才能啟動成功)
cp -a /root/.jenkins/jobs/dragsun_test/workspace/dragsunTest/dist/dragsunTest /home/tomcat/apache-tomcat-7.0.68/webapps(這個是將jenkins拉取的svn代碼拷貝到tomcat下)
sh /home/tomcat/apache-tomcat-7.0.68/bin/restart.sh

(自己寫的restart腳本)

 

代碼如下:

#!/bin/sh
  
  bin=$(cd `dirname $0`; pwd)
  pid=$(ps aux | grep tomcat | grep -v grep | grep -v restart | grep ${bin} | awk '{print $2}') 
  
 if [ -n "${pid}" ]; then
      echo "Shutdown..."
     sh ${bin}/shutdown.sh
      sleep 3
 
     pid=$(ps aux | grep tomcat | grep -v grep | grep -v restart | grep ${bin} | awk '{print $2}')
     if [ -n "${pid}" ]; then
        kill -9 ${pid}
         sleep 1
     fi
 fi
 
 echo "Startup..."
 sh ${bin}/startup.sh
 if [ "$1" = "-v" ]; then
     tail -f ${bin}/../logs/catalina.out
 fi

這個腳本拷下來粘貼到txt文件下修改后綴成sh文件丟到tomcat的bin目錄下是有問題的 會報錯

所以拷到服務器后

用vim (tomcat bin目錄)/restart.sh

打開文件編輯器查看是否有多余字符,刪除

點擊鍵盤Esc 鍵后輸入

:set ff?

查看文件格式 

:set ff=unix

修改文件格式,保存后退出

最后將構建任務保存,並且apply后就可以進行構建任務了


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM