centos

tomcat在centos中怎么设置

小樊
40
2025-11-03 15:22:30
栏目: 智能运维

一、安装Java环境(Tomcat前置依赖)

Tomcat依赖Java运行环境,需先安装OpenJDK 8(或更高版本):

sudo yum install java-1.8.0-openjdk-devel -y
# 验证安装
java -version

若未安装,上述命令会自动下载并安装Java 8开发包。

二、下载并安装Tomcat

  1. 下载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
    
  2. 解压并移动
    将压缩包解压到/opt目录(系统软件推荐存放路径):

    sudo tar xvf apache-tomcat-9.0.56.tar.gz -C /opt
    sudo mv /opt/apache-tomcat-9.0.56 /opt/tomcat  # 可选:重命名目录
    
  3. 创建专用用户(提升安全性):
    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并设置开机自启

  1. 启动Tomcat
    运行以下命令启动Tomcat服务:

    /opt/tomcat/bin/startup.sh
    # 验证启动状态(查看日志)
    tail -f /opt/tomcat/logs/catalina.out
    

    若日志中出现Tomcat started,说明启动成功。

  2. 设置开机自启
    通过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

六、验证Tomcat是否正常运行

在浏览器中访问http://服务器IP:8080,若看到Tomcat欢迎页面(包含“Apache Tomcat”字样),说明安装配置成功。

七、可选配置(按需调整)

1. 配置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使配置生效。

2. 配置虚拟主机(多域名绑定)

编辑/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即可看到对应应用。

0
看了该问题的人还看了