程服務(wù)器部署超詳細(xì)教程)
? 博客簡(jiǎn)介T(mén)omcat是Java Web開(kāi)發(fā)最常用的輕量級(jí)服務(wù)器日常開(kāi)發(fā)分為本地部署Windows開(kāi)發(fā)調(diào)試和遠(yuǎn)程部署Linux云服務(wù)器線上上線兩種場(chǎng)景。很多新手會(huì)混淆兩種部署的配置差異、端口放行、項(xiàng)目上線流程。本文從零手把手教學(xué)分別講解Windows本地Tomcat部署、Linux云服務(wù)器遠(yuǎn)程Tomcat部署包含環(huán)境配置、服務(wù)啟動(dòng)、項(xiàng)目部署、端口配置、常見(jiàn)報(bào)錯(cuò)解決全程實(shí)操可直接復(fù)刻適合入門(mén)學(xué)習(xí)和項(xiàng)目上線使用。 環(huán)境說(shuō)明本地環(huán)境Windows 10/11 JDK1.8 Tomcat9.0通用穩(wěn)定版遠(yuǎn)程環(huán)境阿里云/騰訊云Linux服務(wù)器CentOS7/8 JDK1.8 Tomcat9.0部署項(xiàng)目普通Java Web項(xiàng)目war包部署通用所有SSM/SpringBoot舊版Web項(xiàng)目一、前置必備JDK環(huán)境安裝配置Tomcat運(yùn)行依賴(lài)JDK環(huán)境必須提前配置本地和遠(yuǎn)程服務(wù)器都需要安裝對(duì)應(yīng)版本JDK推薦JDK1.8兼容性最強(qiáng)。1.1 Windows本地JDK配置安裝JDK1.8安裝路徑建議純英文無(wú)中文無(wú)空格如D:\Java\jdk1.8配置系統(tǒng)環(huán)境變量新增JAVA_HOME值為JDK安裝根目錄在Path變量中添加%JAVA_HOME%\binCMD輸入java -version輸出版本號(hào)即配置成功1.2 Linux遠(yuǎn)程服務(wù)器JDK配置CentOS服務(wù)器可直接yum安裝簡(jiǎn)單高效yum install java-1.8.0-openjdk-devel -y # 驗(yàn)證版本 java -version二、Windows本地Tomcat部署開(kāi)發(fā)調(diào)試專(zhuān)用本地部署核心用于項(xiàng)目本地調(diào)試、功能測(cè)試、開(kāi)發(fā)預(yù)覽無(wú)需配置防火墻、公網(wǎng)IP操作簡(jiǎn)單僅需本地環(huán)境配置。2.1 Tomcat下載與解壓官網(wǎng)下載Tomcat9.0壓縮包zip格式Apache Tomcat官網(wǎng)解壓到純英文路徑禁止中文、空格、特殊字符推薦D:\Java\apache-tomcat-9.0無(wú)需安裝解壓即能用2.2 配置Tomcat環(huán)境變量可選推薦配置新增系統(tǒng)變量CATALINA_HOMETomcat解壓根目錄Path追加%CATALINA_HOME%\bin2.3 啟動(dòng)、關(guān)閉Tomcat服務(wù)進(jìn)入Tomcatbin目錄啟動(dòng)服務(wù)雙擊startup.bat黑窗口不閃退即為啟動(dòng)成功關(guān)閉服務(wù)雙擊shutdown.bat訪問(wèn)測(cè)試瀏覽器輸入http://localhost:8080出現(xiàn)Tomcat官方歡迎頁(yè)面說(shuō)明本地部署成功。2.4 本地部署Java Web項(xiàng)目?jī)煞N方式方式1自動(dòng)部署最簡(jiǎn)單推薦新手將項(xiàng)目打包好的xxx.war文件直接復(fù)制到Tomcatwebapps目錄重啟Tomcat后服務(wù)器會(huì)自動(dòng)解壓war包、加載項(xiàng)目。訪問(wèn)地址http://localhost:8080/項(xiàng)目名方式2手動(dòng)配置虛擬路徑自定義項(xiàng)目路徑修改conf/server.xml在Host標(biāo)簽內(nèi)添加配置Context path/myweb docBaseD:\Java\webproject reloadabletrue crossContexttrue/path瀏覽器訪問(wèn)項(xiàng)目路徑docBase本地項(xiàng)目真實(shí)存放路徑reloadabletrue修改代碼自動(dòng)熱部署無(wú)需重啟服務(wù)2.5 本地部署常見(jiàn)問(wèn)題啟動(dòng)窗口閃退JDK環(huán)境未配置、端口8080被占用、路徑含中文端口占用解決修改conf/server.xml中8080端口為8081/8082三、Linux遠(yuǎn)程服務(wù)器Tomcat部署項(xiàng)目上線專(zhuān)用遠(yuǎn)程部署是將項(xiàng)目部署到云服務(wù)器公網(wǎng)環(huán)境實(shí)現(xiàn)外網(wǎng)訪問(wèn)供用戶線上瀏覽使用相比本地部署多了服務(wù)器端口放行、防火墻配置、遠(yuǎn)程文件上傳、開(kāi)機(jī)自啟等核心配置。3.1 上傳并解壓Tomcat安裝包本地下載Tomcat9.0 tar.gz壓縮包通過(guò)Xshell、FinalShell、rz命令上傳到服務(wù)器推薦上傳目錄/usr/local/解壓命令# 解壓tomcat tar -zxvf apache-tomcat-9.0.tar.gz -C /usr/local/ # 重命名方便后續(xù)操作 mv /usr/local/apache-tomcat-9.0 /usr/local/tomcat93.2 服務(wù)器核心配置重中之重遠(yuǎn)程部署最大的坑啟動(dòng)成功但外網(wǎng)無(wú)法訪問(wèn)本質(zhì)是防火墻和安全組未放行端口。3.2.1 防火墻放行8080端口# CentOS7 放行端口 firewall-cmd --permanent --add-port8080/tcp # 重啟防火墻生效 firewall-cmd --reload # 查看已放行端口 firewall-cmd --list-ports3.2.2 云服務(wù)器安全組配置阿里云/騰訊云后臺(tái)進(jìn)入服務(wù)器安全組配置手動(dòng)添加規(guī)則協(xié)議TCP端口8080授權(quán)對(duì)象0.0.0.0/0允許所有外網(wǎng)訪問(wèn)3.3 啟動(dòng)、停止、重啟Tomcat# 啟動(dòng) /usr/local/tomcat9/bin/startup.sh # 停止 /usr/local/tomcat9/bin/shutdown.sh # 查看運(yùn)行日志排查報(bào)錯(cuò) tail -f /usr/local/tomcat9/logs/catalina.out訪問(wèn)測(cè)試瀏覽器輸入http://服務(wù)器公網(wǎng)IP:8080出現(xiàn)Tomcat首頁(yè)即遠(yuǎn)程部署成功。3.4 遠(yuǎn)程部署Java Web項(xiàng)目方式1war包直接部署主流上線方式本地將項(xiàng)目打成war包通過(guò)rz/ftp工具上傳到服務(wù)器Tomcatwebapps目錄重啟Tomcat服務(wù)自動(dòng)解壓部署項(xiàng)目外網(wǎng)訪問(wèn)http://公網(wǎng)IP:8080/項(xiàng)目名方式2Tomcat后臺(tái)可視化部署適合頻繁更新項(xiàng)目無(wú)需重啟服務(wù)。配置管理員賬號(hào)修改conf/tomcat-users.xml末尾添加role rolenamemanager-gui/ user usernameadmin password123456 rolesmanager-gui/重啟Tomcat訪問(wèn)http://公網(wǎng)IP:8080/manager/html輸入賬號(hào)密碼上傳war包一鍵部署3.5 配置Tomcat開(kāi)機(jī)自啟服務(wù)器必備防止服務(wù)器重啟后Tomcat服務(wù)失效配置開(kāi)機(jī)自啟# 創(chuàng)建服務(wù)文件 vim /etc/systemd/system/tomcat.service寫(xiě)入以下內(nèi)容[Unit] DescriptionTomcat9 Server Afternetwork.target [Service] Typeforking EnvironmentJAVA_HOME/usr/lib/jvm/java-1.8.0-openjdk ExecStart/usr/local/tomcat9/bin/startup.sh ExecStop/usr/local/tomcat9/bin/shutdown.sh PrivateTmptrue [Install] WantedBymulti-user.target生效配置systemctl daemon-reload systemctl enable tomcat systemctl start tomcat四、本地部署 VS 遠(yuǎn)程部署 核心區(qū)別對(duì)比對(duì)比維度本地Tomcat部署遠(yuǎn)程Tomcat部署使用場(chǎng)景開(kāi)發(fā)調(diào)試、代碼測(cè)試、本地預(yù)覽項(xiàng)目上線、外網(wǎng)訪問(wèn)、正式運(yùn)營(yíng)訪問(wèn)方式localhost/127.0.0.1僅本機(jī)訪問(wèn)公網(wǎng)IP/域名全網(wǎng)可訪問(wèn)端口配置無(wú)需放行防火墻僅本地端口不沖突即可必須放行服務(wù)器防火墻云平臺(tái)安全組端口項(xiàng)目更新熱部署、重啟本地服務(wù)即可上傳war包、后臺(tái)部署、重啟遠(yuǎn)程服務(wù)額外配置無(wú)復(fù)雜配置開(kāi)機(jī)自啟、權(quán)限配置、日志監(jiān)控、安全配置