在开始部署前,需完成以下基础准备:
sudo yum update -ywget、unzip):sudo yum install -y wget unzipTomcat依赖Java运行环境(JRE/JDK),推荐安装OpenJDK 8(兼容性最佳):
sudo yum install -y java-1.8.0-openjdk-devel
验证Java安装是否成功:
java -version
输出应包含java version "1.8.0_xxx",表示安装成功。
wget直接下载:wget https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.56/bin/apache-tomcat-9.0.56.tar.gz
/opt目录(推荐用于存放应用程序):sudo tar xvf apache-tomcat-9.0.56.tar.gz -C /opt
tomcat:sudo mv /opt/apache-tomcat-9.0.56 /opt/tomcat
编辑/etc/profile.d/tomcat.sh文件(系统级环境变量),添加以下内容:
export CATALINA_HOME=/opt/tomcat # Tomcat安装目录
export PATH=$PATH:$CATALINA_HOME/bin # 将Tomcat命令加入PATH
使配置生效:
source /etc/profile.d/tomcat.sh
为提升安全性,建议创建专用tomcat用户运行Tomcat服务:
# 创建tomcat用户组及用户(禁止登录shell)
sudo groupadd tomcat
sudo useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat
# 更改Tomcat目录所有权(归属tomcat用户)
sudo chown -R tomcat:tomcat /opt/tomcat
/opt/tomcat/bin/startup.sh
/opt/tomcat/bin/shutdown.sh
curl http://localhost:8080
若返回Tomcat默认页面内容(如“Welcome to Tomcat”),则表示启动成功。若服务器启用了firewalld防火墙,需开放Tomcat默认端口(8080):
sudo firewall-cmd --permanent --zone=public --add-port=8080/tcp
sudo firewall-cmd --reload
myapp.war),可通过Maven(mvn clean package)或Gradle构建生成。webapps目录(Tomcat会自动解压部署):sudo cp /path/to/myapp.war /opt/tomcat/webapps/
myapp目录),无需手动操作。在浏览器中输入以下URL(替换your_server_ip为服务器IP):
http://your_server_ip:8080/myapp
若看到应用首页,说明部署成功。
通过systemd创建Tomcat服务,实现开机自动运行:
sudo vi /etc/systemd/system/tomcat.service
[Unit]
Description=Apache Tomcat Web Application Container
After=network.target
[Service]
Type=forking
Environment=JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk # Java路径(通过`java -XshowSettings:properties -version`查看)
Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid # PID文件路径
Environment=CATALINA_HOME=/opt/tomcat # Tomcat主目录
Environment=CATALINA_BASE=/opt/tomcat # 实例目录(与主目录相同则无需修改)
Environment='CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC' # JVM内存设置
Environment='JAVA_OPTS=-Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom' # 避免图形界面依赖
ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh
User=tomcat # 以tomcat用户运行
Group=tomcat # 所属组
UMask=0007 # 文件权限掩码
RestartSec=10 # 重启间隔(秒)
Restart=always # 失败时自动重启
[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload # 重新加载systemd配置
sudo systemctl enable tomcat # 设置开机自启动
sudo systemctl start tomcat # 立即启动服务
sudo systemctl status tomcat
输出中“active (running)”表示服务已启动。/opt/tomcat/logs/catalina.out),确认WAR文件是否解压成功。/opt/tomcat/conf/server.xml中的<Connector port="8080">为其他端口(如8081)。CATALINA_OPTS中的-Xms(初始内存)和-Xmx(最大内存)参数(如-Xms1024M -Xmx2048M)。