在 CentOS 上运行 Java Web 应用的标准流程
一 准备环境
sudo yum install -y java-1.8.0-openjdk-develexport JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdkexport PATH=$JAVA_HOME/bin:$PATHsource /etc/profile.d/java.shjava -version、javac -versionwget https://downloads.apache.org/tomcat/tomcat-9/v9.0.93/bin/apache-tomcat-9.0.93.tar.gz && tar -xzvf apache-tomcat-9.0.93.tar.gz -C /optexport CATALINA_HOME=/opt/apache-tomcat-9.0.93export PATH=$CATALINA_HOME/bin:$PATHsource /etc/profile.d/tomcat.shsudo firewall-cmd --permanent --add-port=8080/tcp && sudo firewall-cmd --reloadsudo yum install -y mavenmvn -v二 部署与启动
mvn clean packagesudo cp target/your-app.war $CATALINA_HOME/webapps/http://<服务器IP>:8080/your-app$CATALINA_HOME/webapps/ROOT 内容sudo cp target/your-app.war $CATALINA_HOME/webapps/ROOT.warhttp://<服务器IP>:8080/$CATALINA_HOME/bin/startup.shtail -f $CATALINA_HOME/logs/catalina.out$CATALINA_HOME/bin/shutdown.sh三 常用管理与优化
sudo vim /etc/systemd/system/tomcat.service[Unit]
Description=Apache Tomcat
After=network.target
[Service]
Type=forking
Environment="JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk"
Environment="CATALINA_HOME=/opt/apache-tomcat-9.0.93"
ExecStart=$CATALINA_HOME/bin/startup.sh
ExecStop=$CATALINA_HOME/bin/shutdown.sh
User=tomcat
Group=tomcat
Restart=on-failure
[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reloadsudo systemctl enable --now tomcatsudo systemctl status tomcat<Connector port="8080" ... />sudo firewall-cmd --permanent --add-port=<新端口>/tcp && sudo firewall-cmd --reload四 常见问题排查
firewall-cmd --list-ports 与云服务器安全组规则