maven自動部署遠程tomcat(tomcat多端口啓動)

以前使用的是Jenkins自動化部署,也是比較推薦的,不過使用maven也能夠直接構建自動化部署tomcathtml

說明條件:web

1.tomcat9而且一個tomcat部署多個端口跑多個項目apache

2.maven版本沒測瀏覽器

3.編輯器ideatomcat

一.tomcat中部署多個端口跑多個項目配置

主要修改tomcat中conf中的server.xml文件中的Service標籤服務器

打開tomcat目錄/conf/server.xmlapp

如下是tomcat的server.xml默認配置webapp

 

將Service標籤複製多個標籤,即須要多個端口複製多個標籤便可:Service標籤說明maven

 1 <Service name="Catalina_mobile">
 2     <!-- 8084表示瀏覽器訪問端口  -->
 3     <Connector port="8084" protocol="org.apache.coyote.http11.Http11NioProtocol"
 4                connectionTimeout="20000"
 5                redirectPort="8022" />
 6     <!-- port="8014" 改成未使用端口便可  -->
 7     <Connector port="8014" protocol="AJP/1.3" redirectPort="9441" 
 8                keepAliveTimeout="3600000" 
 9                maxKeepAliveRequests="300"/>
10     <Engine name="Catalina" defaultHost="localhost">
11       <Realm className="org.apache.catalina.realm.LockOutRealm">
12         <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
13                resourceName="UserDatabase"/>
14       </Realm>
15       <!-- appBase爲自定義tomcat端口的war包位置 -->
16       <Host name="localhost"  appBase="webapps/mobile"
17             unpackWARs="true" autoDeploy="true" >
18         <!-- 下方註釋能夠放開,可是放開時使用maven動態上傳war不會自動解壓,故不放開爲好 -->
19         <!-- <Context debug="0" docBase="C:/Users/tuhao/Desktop/tomcat/webapps/mobile/ROOT/" path="/" privileged="true" reloadable="true"></Context>  -->
20         <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
21                prefix="localhost_access_log" suffix=".txt"
22                pattern="%h %l %u %t &quot;%r&quot; %s %b" />
23       </Host>
24     </Engine>
25   </Service>

能夠按照上述說明配置多個Service以及對應的目錄放入對應的項目便可將tomcat配置多個端口訪問項目編輯器

二.配置tomcat的manager

編輯遠程tomcat服務器下的conf/tomcat-users.xml,在末尾增長(也能夠拉到文件末尾,去掉註釋改一下也能夠)

 

1 <role rolename="manager-gui"/>
2 <role rolename="manager-script"/>
3 <role rolename="admin-gui"/>
4 <role rolename="admin-script"/>
5 <role rolename="tomcat-gui"/>
6 <user username="root" password="root" roles="manager-gui,manager-script,admin-gui,admin-script,tomcat-gui"/>

三.添加manager

將上述圖片兩個項目放到對應的每一個項目文件夾中

訪問:http://serverIp:port/manager/html輸入上述帳戶密碼root/root是否進入manager項目

 四.配置項目的pom文件

 添加一個plugin

url:爲動態部署http://serverId:port/manager/test

path:有個騷操做好比在file1文件夾下的file.war包,就要寫出file1\file2(不建議這樣使用,可能形成沒法動態解壓war包)

 1 <plugin>
 2     <groupId>org.apache.tomcat.maven</groupId>
 3     <artifactId>tomcat7-maven-plugin</artifactId>
 4     <version>2.2</version>
 5     <configuration>
 6         <url>http://127.0.0.1:8082/manager/text</url>
 7         <username>root</username>
 8         <password>root</password>
 9         <server>tomcat</server>
10         <uriEncoding>UTF-8</uriEncoding>
11         <finalName>ROOT.war</finalName>
12         <path>/ROOT</path>
13     </configuration>
14 </plugin>

 

五.maven執行命令

有文章說第一次使用一個,最後使用另外一個,我沒有遇到,使用兩個貌似都行,但沒有詳細測試,讀者可自行選擇排查

clean compile install tomcat7:redeploy
或者
clean compile install tomcat7:deploy(要求:上步驟plugin的configuration須要添加一個標籤<update>true<update>,不然會報錯)

六.參考文章推薦

有些報錯處理方式:https://www.cnblogs.com/xyb930826/p/5725340.html

相關文章
相關標籤/搜索