使用jekins自動構建部署java maven項目的方法步驟

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參數即可

windows在catalina.bat 文件裡添加如下參數(添加到文件開頭):

set JAVA_OPTS=-server -XX:PermSize=512M -XX:MaxPermSize=2048M -Xms512M -Xmx2048M -XX:MaxNewSize=512M

linux在catalina.sh文件裡添加如下參數(添加到文件開頭):

JAVA_OPTS=”-server -XX:PermSize=256M -XX:MaxPermSize=1024m -Xms512M -Xmx1024M -XX:MaxNewSize=256m”

是否添加成功,可以使用 jps -v 命令查看(windows和linux下均可)

重新啟動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 回車就不需要密碼瞭。

如果機器B添加多個別的機器的公鑰,則需要在authorized_keys中追加公鑰內容,命令如下:

cat id_rsa.pub >> /root/.ssh/authorized_keys

到此這篇關於使用jekins自動構建部署java maven項目的方法步驟的文章就介紹到這瞭,更多相關jekins自動構建部署java maven項目內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: