在 Debian 上部署 Apache Tomcat,常见做法有两种:使用 apt 安装(简单、适合快速使用) 和 手动安装官方二进制包(推荐,适合生产环境)。下面从准备环境到部署应用给你一个完整流程。
Tomcat 依赖 Java(JRE 或 JDK)。
sudo apt update
sudo apt install openjdk-17-jdk -y
验证:
java -version
适合快速测试,版本可能不是最新
sudo apt install tomcat9 -y
sudo systemctl start tomcat9
sudo systemctl enable tomcat9
浏览器访问:
http://服务器IP:8080
Debian 默认安装后通常没有管理页面,需要手动安装管理包:
sudo apt install tomcat9-admin
适合生产环境,可控性强
sudo useradd -r -m -U -d /opt/tomcat -s /bin/false tomcat
以 Tomcat 10 为例(Tomcat 9 同理):
cd /tmp
wget https://dlcdn.apache.org/tomcat/tomcat-10/v10.1.28/bin/apache-tomcat-10.1.28.tar.gz
解压:
sudo mkdir -p /opt/tomcat
sudo tar -xzf apache-tomcat-*.tar.gz -C /opt/tomcat --strip-components=1
sudo chown -R tomcat:tomcat /opt/tomcat
sudo chmod -R u+x /opt/tomcat/bin
sudo nano /etc/systemd/system/tomcat.service
内容示例:
[Unit]
Description=Apache Tomcat
After=network.target
[Service]
Type=forking
User=tomcat
Group=tomcat
Environment=JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64
Environment=CATALINA_HOME=/opt/tomcat
Environment=CATALINA_BASE=/opt/tomcat
Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid
ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh
Restart=on-failure
[Install]
WantedBy=multi-user.target
如果 Java 路径不同,用:
readlink -f $(which java)
sudo systemctl daemon-reload
sudo systemctl start tomcat
sudo systemctl enable tomcat
sudo systemctl status tomcat
sudo ufw allow 8080/tcp
访问:
http://服务器IP:8080
cp yourapp.war /opt/tomcat/webapps/
Tomcat 会自动解压并部署。
/opt/tomcat/webapps/yourapp/
编辑:
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"/>
然后重启:
sudo systemctl restart tomcat
sudo netstat -tulnp | grep 8080
修改端口:
/opt/tomcat/conf/server.xml
如果你愿意,我可以帮你:
你现在用的是 Debian 11 还是 12?