Tomcat依赖Java运行环境,需先安装OpenJDK 8(或更高版本):
sudo yum install java-1.8.0-openjdk-devel -y
# 验证安装
java -version
若未安装,上述命令会自动下载并安装Java 8开发包。
下载Tomcat:
访问Apache Tomcat官网下载最新稳定版(如9.0.56),或使用wget命令直接下载:
wget https://downloads.apache.org/tomcat/tomcat-9/v9.0.56/bin/apache-tomcat-9.0.56.tar.gz
解压并移动:
将压缩包解压到/opt目录(系统软件推荐存放路径):
sudo tar xvf apache-tomcat-9.0.56.tar.gz -C /opt
sudo mv /opt/apache-tomcat-9.0.56 /opt/tomcat # 可选:重命名目录
创建专用用户(提升安全性):
Tomcat不应以root用户运行,需创建专用用户tomcat:
sudo groupadd tomcat
sudo useradd -s /bin/nologin -g tomcat -d /opt/tomcat tomcat
sudo chown -R tomcat:tomcat /opt/tomcat # 修改目录所有权
sudo chmod +x /opt/tomcat/bin/*.sh # 赋予执行权限
编辑/etc/profile.d/tomcat.sh(系统级环境变量),添加Tomcat路径:
sudo vi /etc/profile.d/tomcat.sh
写入以下内容:
export CATALINA_HOME=/opt/tomcat # Tomcat安装目录
export PATH=$PATH:$CATALINA_HOME/bin # 添加Tomcat到PATH
使配置生效:
source /etc/profile.d/tomcat.sh
启动Tomcat:
运行以下命令启动Tomcat服务:
/opt/tomcat/bin/startup.sh
# 验证启动状态(查看日志)
tail -f /opt/tomcat/logs/catalina.out
若日志中出现Tomcat started,说明启动成功。
设置开机自启:
通过systemd管理Tomcat服务,创建服务文件:
sudo vi /etc/systemd/system/tomcat.service
写入以下内容(关键参数说明见注释):
[Unit]
Description=Apache Tomcat Web Application Container
After=network.target
[Service]
Type=forking
Environment=JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk # Java路径(通过`java -XshowSettings:properties -version`查看)
Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid # PID文件路径
Environment=CATALINA_HOME=/opt/tomcat # Tomcat主目录
Environment=CATALINA_BASE=/opt/tomcat # 实例目录(单实例可不改)
Environment='CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC' # JVM内存配置
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 # 以tomcat用户运行
Group=tomcat
UMask=0007
RestartSec=10
Restart=always # 失败自动重启
[Install]
WantedBy=multi-user.target
保存后,执行以下命令启用并启动服务:
sudo systemctl daemon-reload # 重新加载systemd配置
sudo systemctl enable tomcat # 设置开机自启
sudo systemctl start tomcat # 启动服务
# 查看服务状态
sudo systemctl status tomcat
若系统启用了firewalld,需开放Tomcat默认端口(8080):
sudo firewall-cmd --permanent --zone=public --add-port=8080/tcp # 永久开放端口
sudo firewall-cmd --reload # 重新加载防火墙规则
# 验证端口是否开放
sudo firewall-cmd --zone=public --query-port=8080/tcp
在浏览器中访问http://服务器IP:8080,若看到Tomcat欢迎页面(包含“Apache Tomcat”字样),说明安装配置成功。
编辑/opt/tomcat/conf/tomcat-users.xml,添加管理员账号(用于访问/manager/html和/host-manager/html):
<tomcat-users>
<role rolename="manager-gui"/> <!-- 管理控制台 -->
<role rolename="admin-gui"/> <!-- 主机管理 -->
<user username="admin" password="your_password" roles="manager-gui,admin-gui"/>
</tomcat-users>
保存后,重启Tomcat使配置生效。
编辑/opt/tomcat/conf/server.xml,在<Engine>标签内添加<Host>配置(以example.com为例):
<Engine name="Catalina" defaultHost="localhost">
<Host name="example.com" appBase="webapps/example.com" unpackWARs="true" autoDeploy="true">
<Context path="" docBase="/var/www/example.com" reloadable="true"/> <!-- 应用目录 -->
<Alias>www.example.com</Alias> <!-- 别名 -->
</Host>
</Engine>
创建应用目录并设置权限:
sudo mkdir -p /var/www/example.com
sudo chown -R tomcat:tomcat /var/www/example.com
重启Tomcat后,访问http://example.com:8080即可看到对应应用。