首页主机资讯Debian Java程序如何部署

Debian Java程序如何部署

时间2025-12-09 13:10:04发布访客分类主机资讯浏览1283
导读:Debian 上部署 Java 应用的实用步骤 一 准备环境 更新索引并安装 OpenJDK(按项目选择版本,如 11 或 17): 安装运行时或开发套件:sudo apt update && sudo apt inst...

Debian 上部署 Java 应用的实用步骤

一 准备环境

  • 更新索引并安装 OpenJDK(按项目选择版本,如 1117):
    • 安装运行时或开发套件:sudo apt update & & sudo apt install openjdk-17-jdksudo apt install default-jdk
    • 验证版本:java -versionjavac -version
  • 配置 JAVA_HOME(系统级,所有用户生效):
    • 编辑:sudo nano /etc/environment,添加例如:JAVA_HOME="/usr/lib/jvm/java-17-openjdk-amd64"
    • 使生效:source /etc/environment
  • 多版本管理(如同时装有 8/11/17):sudo update-alternatives --config java,按提示选择默认版本。

二 部署方式

  • 方式 A 直接运行可执行 JAR
    • 构建:mvn clean package(或 gradle build),产物一般为 target/your-app.jar
    • 运行:java -jar your-app.jar;生产建议后台运行并输出日志:nohup java -jar your-app.jar > app.log 2> & 1 &
  • 方式 B 部署 WARTomcat
    • 安装:sudo apt install tomcat9
    • 部署:将 WAR 放入 /var/lib/tomcat9/webapps/,Tomcat 会自动解压部署
    • 管理:sudo systemctl status|start|stop tomcat9
    • 访问:浏览器打开 http://服务器IP:8080/应用上下文路径
  • 方式 C 使用 Docker 部署
    • 安装 Docker(Debian 官方仓库):
      • sudo apt-get update
      • curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
      • echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /devref
      • sudo apt-get update & & sudo apt-get install -y docker-ce docker-ce-cli containerd.io
    • Spring Boot 示例 Dockerfile:
      • FROM openjdk:17-jre-slim
      • COPY target/your-app.jar /app.jar
      • EXPOSE 8080
      • ENTRYPOINT ["java","-jar","/app.jar"]
    • 构建与运行:docker build -t your-app .docker run -d -p 8080:8080 your-app
  • 方式 D 使用 Nginx 反向代理(可选,便于域名与 HTTPS)
    • 安装:sudo apt install -y nginx
    • 配置 /etc/nginx/sites-available/default
      • server { listen 80; server_name your_domain; location / { proxy_pass http://localhost:8080; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } }
    • 生效:sudo systemctl reload nginx

三 运行与运维要点

  • 开放防火墙端口(如使用 ufw):sudo ufw allow 8080/tcp
  • 查看日志:
    • 直接运行:tail -f app.log
    • Tomcat:journalctl -u tomcat9 -f 或查看 /var/log/tomcat9/catalina.out
  • JVM 调优(示例):java -Xms512m -Xmx2g -jar your-app.jar
  • 常见问题速解:
    • “java: command not found” 或版本不对:检查 JAVA_HOMEPATH,用 update-alternatives --config java 选定版本
    • 端口占用:ss -tlnp | grep 8080 查找并释放占用进程
    • 数据库连接失败:核对 application.properties 中的 URL/用户名/密码,并确认数据库网络可达与白名单设置。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Debian Java程序如何部署
本文地址: https://pptw.com/jishu/767028.html
Debian如何安装Java运行时 怎样用Linux Aliases提高系统安全性

游客 回复需填写必要信息