自動部署java項目,熱部署方式


大部分內容轉自:https://www.cnblogs.com/hdwang/p/6081994.html

怎么創建項目不贅述了,不會的也不用往下看了,熱部署不需要重啟tomcat

說下安裝插件

上述默認安裝的插

Maven Integration plugin

SSH plugin (要用到)

Deploy to container Plugin

 

 

上述信息提示配置一下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機器)----不應該直接刪除,應該制作最近1個月穩定版本備份

 

思路就是,執行遠程腳本關閉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


免責聲明!

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



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