Alibaba Cloud Linux 安装生产环境-Tomcat

在 Alibaba Cloud Linux 4 LTS 64位系统上安装 Tomcat 9,推荐采用手动部署方式,以便更好地控制安装细节。

以下是完整的操作指南:

📝 准备工作

第一步,安装 Java 环境 (JDK)

Tomcat 9 需要 Java 环境支持。Alibaba Cloud Linux 4 基于 RHEL/CentOS 生态,使用 yum 包管理器。

bash 复制代码
# 1. 更新系统软件包
sudo yum update -y

# 2. 安装 OpenJDK 11 (推荐用于 Tomcat 9)
sudo yum install -y java-11-openjdk-devel

# 3. 验证安装
java -version
配置阿里云安全组

在浏览器访问之前,必须确保阿里云 ECS 控制台的安全组规则已放行 8080 端口。

  • 进入 ECS 控制台 -> 实例 -> 安全组 -> 配置规则。
  • 添加入方向规则:端口范围 8080/8080,授权对象 0.0.0.0/0

🚀 安装与配置 Tomcat 9

第二步,下载并解压 Tomcat

我们将直接下载 Apache Tomcat 9 的二进制包并解压到 /usr/local 目录。

bash 复制代码
# 1. 切换到 /tmp 目录进行下载
cd /tmp

# 2. 下载 Tomcat 9 (当前最新稳定版示例,版本号可能会随时间更新)
sudo wget https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.91/bin/apache-tomcat-9.0.91.tar.gz --no-check-certificate

# 3. 移动到 /usr/local 并解压
sudo mv apache-tomcat-9.0.91.tar.gz /usr/local/
cd /usr/local/
sudo tar -zxvf apache-tomcat-9.0.91.tar.gz

# 4. 创建软链接,方便后续管理
sudo ln -s /usr/local/apache-tomcat-9.0.91 /usr/local/tomcat
第三步,配置系统服务 (systemd)

为了让 Tomcat 在后台运行、开机自启,我们需要配置 systemd 服务文件。由于不使用专用用户,服务将以 root 身份运行。

  1. 获取 JAVA_HOME 路径

    先执行以下命令找到 JDK 的安装路径:

    bash 复制代码
    sudo readlink -f $(which java)

    注意:输出结果通常是 /usr/lib/jvm/.../bin/java,你需要复制去掉末尾 /bin/java 的路径,例如 /usr/lib/jvm/java-11-openjdk-xxx

  2. 创建服务文件

    创建 /etc/systemd/system/tomcat.service 文件:

    bash 复制代码
    sudo vi /etc/systemd/system/tomcat.service

    请将以下内容复制进去,务必修改 JAVA_HOME 为你上一步获取的实际路径

    ini 复制代码
    [Unit]
    Description=Apache Tomcat Web Application Container
    After=network.target
    
    [Service]
    Type=forking
    # 直接使用 root 用户运行
    User=root
    Group=root
    
    # 请根据实际情况修改下面的 JAVA_HOME 路径
    Environment="JAVA_HOME=/usr/lib/jvm/java-11-openjdk-11.0.22.0.7-1.el7.x86_64"
    Environment="CATALINA_PID=/usr/local/tomcat/temp/tomcat.pid"
    Environment="CATALINA_HOME=/usr/local/tomcat"
    Environment="CATALINA_BASE=/usr/local/tomcat"
    
    ExecStart=/usr/local/tomcat/bin/startup.sh
    ExecStop=/usr/local/tomcat/bin/shutdown.sh
    Restart=on-failure
    
    [Install]
    WantedBy=multi-user.target
第四步,启动服务

配置完成后,重新加载系统服务配置并启动 Tomcat。

bash 复制代码
# 1. 重新加载 systemd 配置
sudo systemctl daemon-reload

# 2. 启动 Tomcat
sudo systemctl start tomcat

# 3. 设置开机自启
sudo systemctl enable tomcat

# 4. 停止
sudo systemctl stop tomcat

# 5. 重启
sudo systemctl restart tomcat

✅ 验证安装

第五步,检查服务状态
bash 复制代码
sudo systemctl status tomcat

如果看到 Active: active (running),说明服务已正常启动。

第六步,浏览器访问

在浏览器地址栏输入:
http://<你的ECS公网IP>:8080

如果你能看到 Apache Tomcat 的欢迎页面(通常是一只猫的图标),说明安装成功。

🛠️ 常见问题排查

如果无法访问或启动失败,请检查以下两点:

  1. 查看日志

    查看 Catalina 日志以获取具体的错误信息:

    bash 复制代码
    tail -f /usr/local/tomcat/logs/catalina.out
  2. 检查防火墙 (Firewalld)

    如果阿里云安全组已配置但仍无法访问,可能是系统内部防火墙拦截。可以尝试开放端口或暂时关闭防火墙测试:

    bash 复制代码
    # 开放 8080 端口
    sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent
    sudo firewall-cmd --reload
相关推荐
杨充17 小时前
1.1 数据编码设计原理
linux·运维·网络·底层原理·数据编码
fan_music17 小时前
Linux I/O
linux
Java小白笔记17 小时前
Linux 手动部署 Oracle JDK 17 完全指南
java·linux·oracle
蜀道山老天师17 小时前
Docker Compose 多容器编排实战:LNMP、Tomcat 集群、云桌面、Portainer、Zabbix 一键部署
运维·docker·容器·tomcat·zabbix
慵懒的猫mi18 小时前
deepin 25部署x11vnc+xrdp,实现vnc和mstsc双重访问
linux·windows·开源软件·deepin
剑神一笑19 小时前
Linux lsof 命令深度解析:从文件描述符到进程追踪
linux·运维·php
andlbds19 小时前
解决Ubuntu20.04进入系统卡死在厂商Logo界面问题
linux·ubuntu
MIXLLRED19 小时前
解决: Ubuntu 22.04上树莓派4B扩展板ROS2兼容性修复指南
linux·ubuntu·树莓派
zizle_lin19 小时前
CentOS配置yum源
linux·运维·centos
武器大师7220 小时前
从零开始在 Linux 上编译运行 lvgljs 图形界面项目
linux·运维·服务器