jenkins自動構建部署


環境 centos7   tomcat8.5.37   maven3.3.9   jdk8   git1.8.3.1

安裝jdk,tomcat,maven,git(環境變量,配置文件什么的自行百度)

部署jenkins(下載jenkins.war扔進tomcat即可,如果報錯了就將war包解壓一下再扔進去)

配置jenkins,插件管理,系統設置,全局工具設置,添加憑證等等

(注意要安裝deploy to a container插件才能構建后自動部署)

 

下面就是重點了

構建規則

這里我選的是定時構建, H 1 * * *表示每天凌晨一點構建一次

 

部署(重點)

部署這塊我踩了不少坑

需要注意的是:

tomcat默認不不允許遠程訪問的,所以需要先設置允許遠程訪問(jenkins里報401就是這個原因)

 進入tomcat9091-2/webapps/host-manager/META-INF/context.xml   allow 修改為 allow="^.*$" 

jenkins里需要的tomcat用戶密碼在conf/tomcat-users.xml里(jenkins里報403就是這個原因)

 

這整段改成

  <role rolename="tomcat"/>
  <role rolename="role1"/>
  <role rolename="manager-script"/>
  <role rolename="manager-gui"/>
  <role rolename="manager-status"/>
  <user username="tomcat" password="123" roles="tomcat"/>
  <user username="both" password="123" roles="tomcat,role1"/>
  <user username="role1" password="123" roles="role1"/>
  <user username="admin" password="123" roles="manager-gui,manager-script,manager-status"/>

 

需要注意的是,不管war包名是什么,只要contextPath里寫的是“/”,部署在tomcat里的war包名都是ROOT.war(這點還是很好的,以前為了在瀏覽器里不帶項目名直接訪問,都是自己先刪掉tomcat原來的ROOT.war然后把生成的ROOT.war在放進去)

另外網上說的項目名為ROOT.war會報錯,我測了並沒有報錯。

 

還有一點,就是項目過大的問題。有這么幾點建議

maven里的jar包最好不要讓jenkins去下載,下載好了后放到maven倉庫里去(否則容易斷開連接或者內存溢出導致構建失敗,為什么會內存溢出?反正我的阿里雲2G內存不夠用)

殺掉電腦里的一些其他進程

重啟大法:重啟tomcat——>重啟系統

加內存(怎么加自行百度):jvm內存——>maven內存——>tomcat內存(防止項目過大無法上傳)——>加電腦內存(終極解決方案哈哈)

 


免責聲明!

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



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