亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何搭建Jenkins + Git + Maven + tomcat + nexus集成環境

發布時間:2021-11-05 17:38:59 來源:億速云 閱讀:179 作者:柒染 欄目:建站服務器

如何搭建Jenkins + Git + Maven + tomcat + nexus集成環境,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。

實現“自動構建、部署”web應用

1、安裝環境

    操作系統:Centos 7.2

    JDK:1.8.x

    Maven:3.5.x

    Git: 1.8.1,自建GitLab平臺

    tomcat:8.x
2.第三方安裝安裝和環境配置
增加hosts解析
JDK、Git、Maven、tomcat在上述2個宿主機器上都需要安裝,即jenkins master和slave都需要這些環境。

    1)JDK安裝:略;安裝后之后,請注意配置JAVA_HOME環境變量。

    2)Maven安裝:從apache下載tar.gz壓縮包,在合適的目錄下解壓即可。此后配置M2_HOME環境變量。
                              如果使用私服的Maven中央倉庫 nexus,要指定 /usr/server/apache-maven-3.5.0/conf/settings.xml

    3)tomcat安裝:略。

    4)Git:安裝非常簡單,直接執行“yum install git”即可。

    5)如果你的GitLab是自建的內網平臺,千萬不要忘了在上述2個宿主機器上增加hosts解析,例如:

安裝一個tomcat ,其http端口為8082
下載jenkins的war包,并放到tomcat下 http://mirrors.jenkins-ci.org/war/

1)context.xml:增加jenkins環境變量,由tomcat掛載。

  1. <Environment name="JENKINS_HOME" value="/u01/jenkins_home/" type="java.lang.String"/>


  2. <Resources    cachingAllowed="true" cacheMaxSize="200000"/>

“JENKINS_HOME”是jenkins的home目錄,通常設定為“磁盤空間較大”的分區,這個目錄中將放置maven build的文件,歷史部署記錄等等,所以將會消耗很大的存儲空間
“cacheMaxSize” 指定內存單位K ,如果報內存不夠時加

2)tomcat-users.xml:配置jenkins的用戶,此后用戶可以在jenkins的頁面上登錄和授權操作,對于jenkins的用戶授權,官方提供了很多方式,比如LDAP、基于數據庫等等。本實例基于tomcat user的方式,簡單易用
添加2個管理員用戶,其中admin可以對系統各項配置進行修改,manager可以管理項目、部署等。

  1. <role rolename="manager"/>

  2. <role rolename="admin"/>

  3. <role rolename="manager-gui"/>

  4. <role rolename="manager-script"/>

  5. <role rolename="manager-jmx"/>

  6. <role rolename="admin-gui"/>

  7. <user username="admin" password="xxx" roles="admin,manager-gui,manager-script,manager-jmx,manager-status"/>

  8. <user username="deployer" password="xxx" roles="manager,manager-gui,manager-script,manager-jmx,manager-status"/>

 
3)將jenkins.war放置在webapps目錄下,我們此處希望jenkins作為ROOT項目加載,所以刪除原有的ROOT項目,并將jenkins.war重命名位ROOT.war,這樣在通過http訪問jenkins時,不需要加ContextPath了。

4)啟動jenkins tomcat:./startup.sh
5)訪問“http://192.168.1.194:8082”,然后使用admin用戶登錄(用戶密碼參見tomcat-users.xml)。

1.用戶權限配置
系統管理-->Configure Global Security
安全域: Jenkins專有數據庫
搜索策略:登陸用戶可以做任何事
2.mail 配置
系統管理-->系統配置-->Jenkins Location
填寫系統管理員地址

系統管理-->系統配置-->郵件通知
SMTP服務器  smtp.126.com
用戶默認郵件后綴 @126.com
使用SMTP認證
用戶名 system_mail_ul@126.com
密碼

3.jdk、git、maven配置
系統管理-->Global Tool Configuration
新增jdk、git、maven路徑
/usr/server/jdk1.7.0_80
/usr/server/apache-maven-3.5.0

4.Build與發布
我們接下來創建一個job,這個job將從GitLab上下載源碼到本地,然后使用Maven build和打包,并發布到tomcat上。這個過程正是我們常用的
Deploy to container plugin 這個插件,請首先安裝;它主要用來將“war”文件“deploy/redeploy”到web容器中,比如tomcat、jboss等。有了這個插件,我們可以在maven build之后,立即將war發布到tomcat中,而不需要手動操作或者寫shell腳本來copy文件。

首先,我們需要準備一個tomcat,用來部署我們的web application,過程略。此tomcat的端口為8080,部署在master宿主機器上。

因為Deploy插件是通過外部(http)方式“deploy/redeploy”,所以需要在tomcat上進行用戶授權。編輯tomcat-users.xml,增加如下配置:

  1.     <role rolename="manager"/>

  2.     <role rolename="admin"/>

  3.     <role rolename="manager-gui"/>

  4.     <role rolename="manager-script"/>

  5.     <user username="deployer" password="xxx" roles="manager,manager-gui,manager-script,manager-jmx,manager-status" />


增加一個“deployer”用戶,我們可以通過tomcat manager機制來部署war。參見稍后講解。

如何搭建Jenkins + Git + Maven + tomcat + nexus集成環境





觸發器實際是不需要的。

如何搭建Jenkins + Git + Maven + tomcat + nexus集成環境

如何搭建Jenkins + Git + Maven + tomcat + nexus集成環境
如何搭建Jenkins + Git + Maven + tomcat + nexus集成環境

下面是我測試的樣子

最后配置tomcat容器路徑,大功告成,注意

此處tomcatA8為管理用戶,需要具備manager-gui,manager-script,manager-jmx,manager-status權限,否則報錯

如使用nginx代理,則需要設置最大緩沖大小大于war包大小,否則報錯.

報錯信息可在構建任務中的Console Output 菜單下查看


想打包正ROOT.war,有兩種方法:
1.修改pom.xml文件中的 改成你想要的名字
2.上圖設置中 Context path :   /ROOT

其中“WAR/EAR files”選項指定war的位置,這個路徑是個相對路徑,相對于“/home/jenkins_home/workspace/{你的item名稱}”,本實例是一個maven多模塊項目,且每個module打包的名稱都為ROOT.war,這樣方便部署。 請管理員指定正確的路徑。

    Containers中,我們使用了tomcat 7,輸入上文我們設定的用戶名和密碼,指定tomcat Url,需要注意,既然應用是基于http manager的方式deploy,那么此tomcat的webapps自帶的“manager”項目不能被刪除,同時tomcat還需要處于啟動狀態。(tomcat也可能以為死亡,所以建議在pre step中加上對tomcat狀態的判斷,如果tomcat死亡,先執行startup.sh)。

    如果在部署時,報錯。請按照如下方式排查:

    1)tomcat是否已經啟動。

    2)tomcat-users.xml是否配置正確。

    3)tomcat的版本和“Deploy plugin”中container指定的是否一致。

    4)tomcat下是否已經有ROOT項目,如果有,請刪除,然后重啟tomcat,此后再使用jenkins發布,因為reploy時會檢測舊的ROOT和新的ROOT.war項目的版本相容性,如果不同,則會導致reploy失敗。


 構建日志:

[JENKINS] Archiving /u01/jenkins_home/workspace/gkgp/web/pom.xml to com.tudou.gkgp/web/1.0-SNAPSHOT/web-1.0-SNAPSHOT.pom
[JENKINS] Archiving /u01/jenkins_home/workspace/gkgp/web/target/gkgp.war to com.tudou.gkgp/web/1.0-SNAPSHOT/web-1.0-SNAPSHOT.war
[gkgp] $ /bin/sh -xe /home/jenkins/apache-tomcat-8.0.36/temp/hudson7572047694542790795.sh
channel stopped
Deploying /u01/jenkins_home/workspace/gkgp/web/target/gkgp.war to container Tomcat 8.x Remote with context /gkgp  [/u01/jenkins_home/workspace/gkgp/web/target/gkgp.war] is not deployed. Doing a fresh deployment.
  Deploying [/u01/jenkins_home/workspace/gkgp/web/target/gkgp.war]Finished: SUCCESS

---END---

other:   profile

各屬性節點的值,用占位符"${屬性名}"占位,maven在compile/package時,會根據profile的環境自動替換這些占位符為實際屬性值。

默認情況下: 

maven package

將采用默認激活的profile環境來打包,也可以手動指定環境,比如:

maven package -P dev

將自動打包成dev環境的部署包(注:參數P為大寫)

實現“自動構建、部署”web應用實現“自動構建、部署”web應用

看完上述內容,你們掌握如何搭建Jenkins + Git + Maven + tomcat + nexus集成環境的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

武邑县| 乡城县| 邮箱| 如东县| 安图县| 元朗区| 梁平县| 陵川县| 越西县| 承德市| 昌图县| 连平县| 大埔区| 屏东县| 武川县| 磴口县| 静乐县| 奈曼旗| 铁力市| 鄂托克前旗| 盐城市| 泽州县| 和硕县| 三亚市| 同德县| 大英县| 崇明县| 宣武区| 红安县| 清徐县| 桑植县| 铁岭市| 北流市| 尼勒克县| 汕头市| 鹿泉市| 秭归县| 房产| 汝州市| 蒙自县| 赞皇县|