Ubuntu系统安装与配置Tomcat的详细步骤
Tomcat依赖Java运行环境(JRE/JDK),首先需要确保系统已安装兼容的Java版本(推荐OpenJDK 11及以上)。
sudo apt update && sudo apt upgrade -y
sudo apt install openjdk-11-jdk -y
openjdk version "11.x.x":java -version
从Apache Tomcat官方网站下载最新稳定版本的二进制发行版(如Tomcat 10),并解压到指定目录。
wget https://downloads.apache.org/tomcat/tomcat-10/v10.0.27/bin/apache-tomcat-10.0.27.tar.gz
sudo tar -zxvf apache-tomcat-10.0.27.tar.gz -C /opt
sudo mv /opt/apache-tomcat-10.0.27 /opt/tomcat
为了让系统识别Tomcat命令(如startup.sh、shutdown.sh),需要设置CATALINA_HOME环境变量。
nano ~/.bashrc
export CATALINA_HOME=/opt/tomcat
export PATH=$PATH:$CATALINA_HOME/bin
source ~/.bashrc
echo $CATALINA_HOME,应输出/opt/tomcat。通过Systemd管理Tomcat服务,可方便地启动、停止、重启及设置开机自启。
sudo nano /etc/systemd/system/tomcat.service
JAVA_HOME路径):[Unit]
Description=Apache Tomcat Web Application Container
After=network.target
[Service]
Type=forking
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
User=tomcat
Group=tomcat
UMask=0007
RestartSec=10
Restart=always
[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl start tomcat
sudo systemctl enable tomcat
sudo systemctl status tomcat
若显示“active (running)”,则表示服务启动成功。Ubuntu默认启用UFW防火墙,需开放Tomcat的默认端口(8080),允许外部设备访问。
sudo ufw allow 8080/tcp
sudo ufw reload
打开浏览器,访问http://localhost:8080(本地)或http://<服务器IP>:8080(远程)。若看到Tomcat的默认欢迎页面(包含“Apache Tomcat”字样),则说明安装配置成功。
若8080端口被占用或需要更改默认端口,可编辑server.xml文件:
sudo nano /opt/tomcat/conf/server.xml
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
<Connector port="8081" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
sudo systemctl restart tomcat
此时需通过http://localhost:8081访问。将Web应用(WAR文件)复制到Tomcat的webapps目录,Tomcat会自动解压并部署:
sudo cp your-app.war /opt/tomcat/webapps/
部署完成后,可通过http://localhost:8080/your-app访问应用(your-app为WAR文件名去掉.war后缀)。
tomcat(创建服务时指定的用户),避免权限不足导致无法启动。journalctl -u tomcat查看Systemd日志,或查看/opt/tomcat/logs/catalina.out文件定位问题。