温馨提示×

怎样在debian部署tomcat

小樊
44
2026-10-15 06:42:51
栏目: 智能运维

下面给你一份在 Debian(11/12 等常见版本)上部署 Apache Tomcat 的实用步骤,从安装到基本配置,适合新手和运维使用。


一、准备工作

1. 更新系统

sudo apt update
sudo apt upgrade -y

2. 安装 Java(Tomcat 需要 JDK)

Tomcat 10/11 需要 Java 17+

sudo apt install -y openjdk-17-jdk

验证:

java -version

二、创建 Tomcat 用户(安全推荐)

不要使用 root 运行 Tomcat

sudo useradd -r -m -U -d /opt/tomcat -s /bin/false tomcat

三、下载并安装 Tomcat

以 Tomcat 10 为例(你可以换成 9 或 11):

cd /tmp
wget https://downloads.apache.org/tomcat/tomcat-10/v10.1.20/bin/apache-tomcat-10.1.20.tar.gz

版本号请去官网确认:https://tomcat.apache.org/download-10.cgi

解压到 /opt/tomcat:

sudo mkdir /opt/tomcat
sudo tar -xzf apache-tomcat-10.1.20.tar.gz -C /opt/tomcat --strip-components=1

赋权:

sudo chown -R tomcat:tomcat /opt/tomcat
sudo chmod +x /opt/tomcat/bin/*.sh

四、配置 systemd 服务

创建服务文件:

sudo nano /etc/systemd/system/tomcat.service

内容如下:

[Unit]
Description=Apache Tomcat
After=network.target

[Service]
Type=forking

Environment=JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64
Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid
Environment=CATALINA_HOME=/opt/tomcat
Environment=CATALINA_BASE=/opt/tomcat

ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh

User=tomcat
Group=tomcat
Restart=on-failure

[Install]
WantedBy=multi-user.target

⚠️ JAVA_HOME 路径可用 readlink -f $(which java) 确认


五、启动 Tomcat

sudo systemctl daemon-reload
sudo systemctl start tomcat
sudo systemctl enable tomcat

查看状态:

sudo systemctl status tomcat

六、放行防火墙端口(如有)

sudo ufw allow 8080/tcp

浏览器访问:

http://服务器IP:8080

七、配置管理用户(可选但常用)

编辑:

sudo nano /opt/tomcat/conf/tomcat-users.xml

示例:

<role rolename="manager-gui"/>
<role rolename="admin-gui"/>
<user username="admin" password="你的密码" roles="manager-gui,admin-gui"/>

默认 manager 页面只允许 localhost,远程访问需修改:

/opt/tomcat/webapps/manager/META-INF/context.xml

注释掉 RemoteAddrValve


八、部署自己的项目

把 .war 文件放到:

/opt/tomcat/webapps/

Tomcat 会自动解压部署。


九、常见优化建议

  • 修改 server.xml 改端口(如 80 / 443)
  • 使用 Nginx 反向代理
  • 配置 HTTPS(Let’s Encrypt)
  • JVM 内存调优(CATALINA_OPTS)

如果你需要: ✅ Debian + Nginx + Tomcat ✅ Docker 部署 Tomcat ✅ Tomcat 集群 / HTTPS ✅ 指定版本(9 / 11)

告诉我你的使用场景,我可以直接给你定制方案。

0 踩