部署Java Web环境
约 598 字大约 2 分钟
2026-08-29
本文介绍在 Linux 云服务器上安装 JDK,并分别以「直接运行 JAR(Spring Boot 等内嵌容器应用)」和「Tomcat 部署 WAR」两种方式运行 Java Web 应用。
开始前
已远程连接 Linux 实例。Java 应用内存占用较高,服务器内存建议 2GB 起。
安装 JDK
推荐 LTS 版本(17 或 21):
sudo apt update && sudo apt install openjdk-17-jdk -ysudo dnf install java-17-openjdk java-17-openjdk-devel -yjava -version方式一:直接运行 JAR(Spring Boot 等)
上传应用包到实例(如
/opt/myapp/app.jar),可使用scp:scp app.jar root@<实例IP>:/opt/myapp/app.jar先手动验证能正常启动(假设端口 8080):
cd /opt/myapp java -jar app.jar确认无误后,创建 systemd 服务实现开机自启与崩溃自动拉起,新建
/etc/systemd/system/myapp.service:[Unit] Description=My Java App After=network.target [Service] WorkingDirectory=/opt/myapp ExecStart=/usr/bin/java -jar /opt/myapp/app.jar SuccessExitStatus=143 Restart=on-failure RestartSec=5 [Install] WantedBy=multi-user.target启动并设置开机自启:
sudo systemctl daemon-reload sudo systemctl start myapp sudo systemctl enable myapp sudo systemctl status myapp
方式二:Tomcat 部署 WAR
下载并解压 Tomcat 10:
cd /opt sudo wget https://dlcdn.apache.org/tomcat/tomcat-10/v10.1.44/bin/apache-tomcat-10.1.44.tar.gz sudo tar -xzf apache-tomcat-10.1.44.tar.gz sudo mv apache-tomcat-10.1.44 tomcat注
下载地址以 Tomcat 官网最新版本为准,替换上述 URL 中的版本号即可。
启动 Tomcat:
sudo /opt/tomcat/bin/startup.sh将 WAR 包放入
webapps目录(Tomcat 会自动解压部署):sudo cp myapp.war /opt/tomcat/webapps/浏览器访问
http://<实例公网IP>:8080/myapp(WAR 包名即访问路径)。
放行端口
- 直接对外提供服务的:在安全组放行应用端口(如 8080)。
- 建议方式:由 Nginx 反向代理到 8080,对外只暴露 80/443(配置方法参见部署Node.js环境第四步)。
常见问题
访问 8080 无响应
依次检查:应用是否启动成功(systemctl status myapp 或查看日志)、端口是否监听(ss -tunlp | grep 8080)、安全组与系统防火墙是否放行。
Tomcat 启动很慢或日志卡在 Digest 阶段
容器内随机数熵源不足所致,编辑 /opt/tomcat/bin/catalina.sh,在 JAVA_OPTS 中加入 -Djava.security.egd=file:/dev/./urandom 后重启。
内存不足导致应用被杀(OOM)
使用 free -h 确认内存(参见Linux资源查看基础命令);可通过 -Xmx 限制 JVM 堆大小(如 java -Xmx1024m -jar app.jar),或升级实例配置。
