温馨提示×

Debian与Tomcat集成开发环境搭建

小樊
32
2025-11-30 04:15:46
栏目: 智能运维

在 Debian 上搭建 Tomcat 集成开发环境

一 环境准备与版本选择

  • 操作系统建议:Debian 11/12(稳定、软件包齐全)。
  • Java 选择:推荐 OpenJDK 11(LTS),兼顾生态与兼容性。
  • Tomcat 选择:推荐 Tomcat 9(稳定分支,适合开发与测试)。
  • 两种常见路径:
    • 快速上手:使用 APT 安装 Tomcat 9(系统服务管理更方便)。
    • 灵活可控:下载 Apache 官方二进制包部署到 /opt/tomcat(便于多版本并存与自定义)。

二 安装与配置步骤

  • 安装 OpenJDK 11
    • 执行:sudo apt update && sudo apt install -y openjdk-11-jdk
    • 验证:java -versionjavac -version
    • 设置环境变量(全局生效):
      • 编辑:sudo nano /etc/profile.d/java.sh
      • 内容:export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
      • 生效:source /etc/profile.d/java.sh
  • 方式 A(APT 安装,快速)
    • 安装:sudo apt install -y tomcat9 tomcat9-admin
    • 验证服务:sudo systemctl status tomcat9(应显示 active/running)
    • 访问测试:http://服务器IP:8080
    • 管理界面:安装后可使用 Manager AppHost Manager(需在 /var/lib/tomcat9/tomcat-users.xml 配置用户与角色)。
  • 方式 B(官方二进制包,灵活)
    • 准备用户与目录:
      • sudo groupadd tomcat
      • sudo useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat
    • 下载与解压(示例版本号可按需替换):
      • wget https://downloads.apache.org/tomcat/tomcat-9/v9.0.98/bin/apache-tomcat-9.0.98.tar.gz
      • sudo tar -xzf apache-tomcat-9.0.98.tar.gz -C /opt
      • sudo mv /opt/apache-tomcat-9.0.98 /opt/tomcat
    • 权限设置:
      • sudo chown -R tomcat:tomcat /opt/tomcat
      • sudo chmod +x /opt/tomcat/bin/*.sh
    • 创建 systemd 服务(推荐):
      • 新建:sudo nano /etc/systemd/system/tomcat.service
      • 内容示例(注意将 JAVA_HOME 与路径按实际环境调整):
        [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
        RestartSec=10
        Restart=always
        
        [Install]
        WantedBy=multi-user.target
        
      • 启动与开机自启:
        • sudo systemctl daemon-reload
        • sudo systemctl start tomcat
        • sudo systemctl enable tomcat
    • 访问测试:http://服务器IP:8080
  • 防火墙放行(如启用 UFW)
    • sudo ufw allow 8080/tcp
    • sudo ufw enable

三 部署与验证

  • 部署方式
    • 自动部署:将 WAR 包复制到 webapps 目录(APT 安装通常为 /var/lib/tomcat9/webapps;二进制包为 /opt/tomcat/webapps),Tomcat 会自动解压并部署,访问路径为 http://IP:8080/应用名
    • 管理端部署:使用 Manager App 上传 WAR(需提前在 tomcat-users.xml 配置具有 manager-gui/manager-script 角色的用户)。
  • 日志与常见问题
    • 查看日志:
      • APT:/var/log/tomcat9/catalina.out/var/log/tomcat9/*.log
      • 二进制包:/opt/tomcat/logs/catalina.out/opt/tomcat/logs/*.log
    • 常见问题排查:
      • 端口占用:sudo ss -tulpen | grep 8080
      • 权限问题:确认 tomcat 用户对 webapps/logs/work/temp 具备读写权限
      • 启动失败:检查 JAVA_HOMECATALINA_HOME 与内存参数是否合理。

四 开发增强与最佳实践

  • 远程调试(便于 IDE 调试)
    • 编辑 /etc/default/tomcat9,在 JAVA_OPTS 追加:
      • -agentlib:jdwp=transport=dt_socket,address=0.0.0.0:8000,server=y,suspend=n
    • 重启后在 IDE 配置远程调试,端口 8000(注意云服务器安全组/防火墙放行)。
  • APR 与性能优化
    • 安装本地库:sudo apt install -y libtcnative-1
    • server.xml 启用 APR(可选,提升 I/O 性能):
      • 添加监听器:<Listener className="org.apache.catalina.core.AprLifecycleListener" useAprConnector="true"/>
      • 连接器可使用:protocol="org.apache.coyote.http11.Http11AprProtocol"
  • 安全加固要点
    • 使用 非 root 用户运行 Tomcat(上文已创建 tomcat 用户)
    • 限制管理端访问(在 manager/META-INF/context.xml 调整 RemoteAddrValveallow 规则)
    • 更改默认端口、禁用或限制 Manager/Host Manager 访问、隐藏版本信息、定期更新。

0