在 openEuler 22.03 上部署 Tomcat 并发布 Java Web 应用
本文将一步步带你完成在 openEuler 22.03 (LTS-SP4) 系统上部署 Apache Tomcat 9,并部署一个 Java Web 应用的全过程。
一、环境准备
-
操作系统:openEuler 22.03 LTS-SP4(建议最小化安装)
-
配置 YUM 软件仓库
二、安装 Java 环境
Tomcat 依赖 Java 运行环境,这里使用 openEuler 仓库自带的 OpenJDK 1.8。
# 更新软件源(可选)
yum update -y
# 安装 OpenJDK 1.8
yum install -y java-1.8.0-openjdk-devel
# 验证安装
java -version
三、下载并安装 Tomcat 9
1. 下载 Tomcat 二进制包
我们选择 Apache 官方归档站点的 Tomcat 9.0.119 版本。
# 进入常用的源码下载目录
cd /usr/local/src
# 下载 Tomcat 9.0.119
wget https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.119/bin/apache-tomcat-9.0.119.tar.gz
# 解压
tar -zxvf apache-tomcat-9.0.119.tar.gz
2. 移动至统一目录
# 创建目标目录
mkdir -p /usr/local/tomcat
# 将解压后的所有文件移动到 /usr/local/tomcat
mv apache-tomcat-9.0.119/* /usr/local/tomcat/
3. 配置环境变量
为了方便在任何目录下调用 Tomcat 的启动/关闭脚本,可以将tomcat的 bin 目录加入 PATH。
export PATH=$PATH:/usr/local/tomcat/bin | sudo tee -a /etc/profile
source /etc/profile
四、启动 Tomcat 并验证
1. 手动启动
# 进入 Tomcat 的 bin 目录
cd /usr/local/tomcat/bin
# 启动
./startup.sh
2. 检查进程和端口
# 查看进程
ps -ef | grep tomcat
# 查看端口(默认 8080)
netstat -tlnp | grep 8080
3. 开放防火墙端口
如果系统启用了防火墙(firewalld),需要放行 8080 端口:
firewall-cmd --zone=public --add-port=8080/tcp --permanent
firewall-cmd --reload
4. 浏览器访问
在浏览器中输入 http://192.168.146.146:8080(替换为你的服务器 IP),如果看到 Tomcat 默认首页(猫图标),说明安装成功。

五、配置 Tomcat 开机自启(Systemd)
为了生产环境稳定,我们使用 systemd 管理 Tomcat 服务。
1. 创建 systemd 服务文件
cat > /etc/systemd/system/tomcat.service <<EOF
[Unit]
Description=Apache Tomcat Web Application Container
After=network.target
[Service]
Type=forking
Environment="JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.462.b08-3.oe2203sp4.x86_64
Environment="CATALINA_HOME=/usr/local/tomcat"
ExecStart=/usr/local/tomcat/bin/startup.sh
ExecStop=/usr/local/tomcat/bin/shutdown.sh
User=root
Group=root
[Install]
WantedBy=multi-user.target
EOF
2. 重载并启用服务
systemctl daemon-reload
systemctl enable tomcat # 设置开机自启
systemctl start tomcat # 立即启动
systemctl status tomcat # 查看状态,应为 active (running)
六、部署 Java Web 应用(WAR 包)
准备好如 hello.war 的 Web 应用(由 Maven 打包生成,依赖 Servlet API,打包命令为 mvn clean package),现在将其部署到 Tomcat。
1. 将 WAR 包复制到 webapps 目录
# WAR 包位于 /opt/hello-app/target/hello.war
cp /opt/hello-app/target/hello.war /usr/local/tomcat/webapps/
2. 自动解压与部署
Tomcat 会自动检测到 webapps 目录下的 WAR 文件,并解压部署。稍等几秒,你会看到 webapps 下出现同名的 hello 文件夹。
3. 访问应用
浏览器访问 http://192.168.146.146:8080/hello/(根据你的应用上下文路径),如果看到应用页面,则部署成功。
整个过程较为基础,但涵盖了一个 Java Web 项目上线所需的核心环节。后续可以根据实际需求优化 JVM 参数、配置 HTTPS、集成 Nginx 反向代理等。
希望本篇实践对你有所帮助,欢迎在评论区交流讨论!
openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构
更多推荐

所有评论(0)