首页主机资讯Debian中Tomcat部署Web应用步骤

Debian中Tomcat部署Web应用步骤

时间2025-11-28 10:10:04发布访客分类主机资讯浏览1260
导读:在 Debian 上部署 Tomcat Web 应用的步骤 一 准备环境 更新系统并安装 Java(推荐 OpenJDK 11): sudo apt update && sudo apt install -y openj...

在 Debian 上部署 Tomcat Web 应用的步骤

一 准备环境

  • 更新系统并安装 Java(推荐 OpenJDK 11):
    • sudo apt update & & sudo apt install -y openjdk-11-jdk
    • java -version
  • 创建专用系统用户(避免以 root 运行):
    • sudo groupadd --system tomcat
    • sudo useradd -s /usr/sbin/nologin -g tomcat -d /opt/tomcat tomcat
  • 说明:Tomcat 9 要求 Java 8+,本示例选用 OpenJDK 11 以兼顾稳定性与兼容性。

二 安装与配置 Tomcat

  • 方式 A 二进制安装(通用、便于多版本并存)
    • 下载并解压(示例为 Tomcat 9.0.76):
      • wget https://downloads.apache.org/tomcat/tomcat-9/v9.0.76/bin/apache-tomcat-9.0.76.tar.gz
      • sudo mkdir -p /opt/tomcat
      • sudo tar -xvf apache-tomcat-9.0.76.tar.gz -C /opt/tomcat --strip-components=1
    • 设置目录权限:
      • sudo chown -R tomcat:tomcat /opt/tomcat
      • sudo chmod +x /opt/tomcat/bin/*.sh
    • 配置环境变量(推荐在 setenv.sh 中设置):
      • echo ‘export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64’ | sudo tee /opt/tomcat/bin/setenv.sh
      • echo ‘export CATALINA_HOME=/opt/tomcat’ | sudo tee -a /opt/tomcat/bin/setenv.sh
  • 方式 B 使用发行版包(简洁、系统集成度高)
    • 安装:sudo apt install -y tomcat9 tomcat9-admin
    • 目录与权限通常位于:/var/lib/tomcat9、/var/log/tomcat9、/etc/tomcat9
    • 注意:不同发行版/版本的包名与目录可能不同,请以实际环境为准。

三 配置 systemd 服务

  • 创建服务文件 /etc/systemd/system/tomcat.service(二进制安装场景):
    • sudo tee /etc/systemd/system/tomcat.service < < ‘EOF’ [Unit] Description=Apache Tomcat Web Application Container After=network.target

      [Service] Type=forking User=tomcat Group=tomcat Environment=“JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64” Environment=“CATALINA_PID=/opt/tomcat/temp/tomcat.pid” Environment=“CATALINA_HOME=/opt/tomcat” Environment=“CATALINA_BASE=/opt/tomcat” Environment=“CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC” 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 Restart=always

      [Install] WantedBy=multi-user.target EOF

  • 启用与启动:
    • sudo systemctl daemon-reload
    • sudo systemctl enable --now tomcat
    • sudo systemctl status tomcat
  • 验证:
    • curl -I http://127.0.0.1:8080
    • 若使用发行版包,可直接:sudo systemctl enable --now tomcat9。

四 部署 Web 应用

  • 自动部署(最简便):
    • 将 WAR 包复制到 webapps:sudo cp your-app.war /opt/tomcat/webapps/
    • Tomcat 会自动解压并部署,访问:http://服务器IP:8080/your-app
  • 外部目录部署(不移动 WAR):
    • /opt/tomcat/conf/Catalina/localhost/ 创建文件 app.xml
      • sudo tee /opt/tomcat/conf/Catalina/localhost/app.xml < < ‘EOF’ EOF
    • 访问:http://服务器IP:8080/app
  • 管理界面部署(可选):
    • 编辑 /opt/tomcat/conf/tomcat-users.xml,添加管理用户(请使用强密码):
      • sudo tee -a /opt/tomcat/conf/tomcat-users.xml < < ‘EOF’ EOF
    • 重启 Tomcat 后访问:http://服务器IP:8080/manager/html。

五 网络与安全加固

  • 防火墙放行:
    • UFW:sudo ufw allow 8080/tcp
    • firewalld:sudo firewall-cmd --permanent --add-port=8080/tcp & & sudo firewall-cmd --reload
  • 可选:反向代理与域名访问(HTTP)
    • 安装与启用模块:sudo apt install -y apache2 libapache2-mod-jk & & sudo a2enmod jk
    • 配置 workers.properties(/etc/apache2/workers.properties):
      • worker.list=worker1
      • worker.worker1.type=ajp13
      • worker.worker1.host=localhost
      • worker.worker1.port=8009
    • 配置虚拟主机(/etc/apache2/sites-available/your-site.conf):
      • < VirtualHost :80> ServerName www.example.com JkMount / worker1 ErrorLog ${ APACHE_LOG_DIR} /example_error.log CustomLog ${ APACHE_LOG_DIR} /example_access.log combined
    • 启用站点并重启:sudo a2ensite your-site.conf & & sudo systemctl restart apache2
  • 日志与排错:
    • 查看实时日志:tail -f /opt/tomcat/logs/catalina.out
    • 发行版包路径可能为:/var/log/tomcat9/catalina.out
  • 安全建议:
    • 使用强口令与最小权限配置管理用户
    • 限制管理接口访问来源(如仅内网)
    • 配置 HTTPS/TLS(启用 8443 或前置反向代理的 443)
    • 隐藏 Tomcat 版本信息,及时打补丁与更新。

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


若转载请注明出处: Debian中Tomcat部署Web应用步骤
本文地址: https://pptw.com/jishu/758775.html
Debian上Tomcat如何配置防火墙 Debian中Tomcat更新后如何测试

游客 回复需填写必要信息