靜態部署TOMCAT


常見部署方式:靜態部署和容器化部署

一、下載tomcat安裝包

下載地址:https://tomcat.apache.org/download-90.cgi

 

 

圖上是顯示最新版本,而我下載的是9.0.8版本。。。 

得到 apache-tomcat-9.0.8.tar.gz,並將其傳輸到服務器的指定路徑

二、部署操作

1、解壓安裝包

tar -xzvf apache-tomcat-9.0.8.tar.gz

 

2、配置環境變量

編輯配置文件

vim /etc/profile

在# Path manipulation 的上面添加如下內容:

export CATALINA_HOME=/root/soft/docker/north/apache-tomcat-9.0.8  # tomcat解壓后的路徑
export CLASSPATH=.:$JAVA_HOME/lib:$CATALINA_HOME/lib
export PATH=$PATH:$CATALINA_HOME/bin

如圖

 生效修改的環境變量

. /etc/profile  或者source /etc/profile

 

3、啟動tomcat

(1)編輯 /root/soft/docker/north/apache-tomcat-9.0.8/conf/server.xml

 

 如上圖,我將端口修改成8082,這里要注意一下tomcat 的默認端口為8080。。。

(2)在apache-tomcat-9.0.8目錄下執行命令

./bin/startup.sh

4、瀏覽器訪問

(1)在阿里雲ECS控制台添加安全組規則、開放8082端口

 

 (2)此時使用 IP:PORT 訪問即可

5、部署方式

(1)Tomcat的Webapps目錄是Tomcat默認的應用目錄,當服務器啟動時,會加載所有這個目錄下的應用。所以可以將JSP程序打包成一個 war包放在目錄下,服務器會自動解開這個war包,並在這個目錄下生成一個同名的文件夾。

(2)webapps這個默認的應用目錄也是可以改變。

  打開Tomcat的conf目錄下的server.xml文件,找到下面內容:

<Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">
</Host>

將appBase修改即可。

(3)在server.xml中指定

 在Tomcat的配置文件中,一個Web應用就是一個特定的Context,可以通過在server.xml中新建Context里部署一個JSP應用程序。打開server.xml文件,在Host標簽內建一個Context,內容如下:

在tomcat中的conf目錄中,在server.xml中的,<host>屬性中添加:

<Context path="/demo" docBase="D:\ workspace\hello\WebRoot" debug="0" privileged="true">
</Context>
或者
<Context path="/myapp" reloadable="true" docBase="D:\myapp" workDir="D:\myapp\work"/>
或者
<Context path="/sms4" docBase="D:\workspace\sms4\WebRoot"/>

說明:
path是虛擬路徑;
docBase 是web項目的WebRoot所在的路徑,注意是WebRoot的路徑,不是項目的路徑。其實也就是編譯后的項目
workDir 是這個應用的工作目錄,存放運行時生成的與這個應用相關的文件;

debug 則是設定debug level,  0表示提供最少的信息,9表示提供最多的信息
privileged設置為true的時候,才允許Tomcat的Web應用使用容器內的Servlet
reloadable 如果為true,則tomcat會自動檢測應用程序的/WEB-INF/lib 和/WEB-INF/classes目錄的變化,自動裝載新的應用程序,可以在不重起tomcat的情況下改變應用程序,實現熱部署
antiResourceLocking 和antiJARLocking  熱部署是需要配置的參數,默認false避免更新了某個webapp,有時候Tomcat並不能把舊的webapp完全刪除,通常會留下WEB-INF/lib下的某個jar包,必須關閉Tomcat才能刪除,這就導致自動部署失敗。設置為true,Tomcat在運行對應的webapp時,會把相應的源文件和jar文件復制到一個臨時目錄里。

(4)在conf\Catalina\localhost 目錄下添加xml配置文件

在conf目錄中,新建 Catalina\localhost目錄,在該目錄中新建一個xml文件,名為demo.xml,要和path后的那個名字一致,按照下邊這個path的配置,xml的名字應該就應該是demo(demo.xml),該xml文件的內容為:

<Context path="/demo" docBase="/root/demo/WebRoot" debug="0" privileged="true"></Context>

 

tomcat自帶例子如下:

<Context docBase="${catalina.home}/server/webapps/host-manager"
         privileged="true" antiResourceLocking="false" antiJARLocking="false">
</Context>

 

這個例子是tomcat自帶的,編輯的內容實際上和第二種方式是一樣的,其中這xml文件名字就是訪問路徑,這樣可以隱藏應用的真實名字。

(5)注意

刪除一個Web應用同時也要刪除webapps下相應的文件夾和server.xml中相應的Context,還要將Tomcat的conf\catalina\localhost目錄下相應的xml文件刪除,否則Tomcat仍會去配置並加載。。。
二 動態部署
     登陸tomcat管理控制台:http://localhost:8080/ ,輸入用戶名和密碼后便可管理應用並動態發布。
     在Context Path(option):中輸入/yourwebname ,這代表你的應用的訪問地址。
     XML Configration file URL中要指定一個xml文件,比如我們在F:\下建立一個hmcx.xml文件,內容如下:

<Context reloadable="false" />

其中docBase不用寫了,因為在下一個文本框中填入。或者更簡單點,這個文本框什么都不填,在WAR or Directory URL:中鍵入F:\hmcx即可,然后點擊Deploy按鈕,上面就可以看到了web應用程序,名字就Context Path(option):中的名字。


免責聲明!

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



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