Tomcat 企业级运维实战系列(一):核心概念与基础部署

发布于:2025-09-01 ⋅ 阅读:(17) ⋅ 点赞:(0)


🚀 Tomcat 系列文章导航
本系列系统讲解 Linux 环境下 Apache Tomcat 的部署、配置、管理与优化,并最终带你完成 企业级前后端分离项目上线。无论你是初学者还是想进阶的运维人员,这份路线图都能帮你快速构建完整的知识体系。

⚠️ 该系列所有涉及的软件包和项目都可以私信博主免费获取


一:概述

📖 Tomcat

  • Tomcat 全称 Apache Tomcat,是由 Apache 软件基金会开发和维护的一个 开源 Web 应用服务器

📖JVM-JRE-JDK

  • JDK 包含了开发 Java 应用程序所需要的所有工具。
  • JRE 仅包含运行 Java 程序所需的环境,适用于运行 Java 应用。
  • JVM 是 Java 应用的执行引擎,负责执行字节码。
  • JDK = JRE + 开发工具,而 JRE = JVM + 类库
  • Oracle JDK → 付费,Open JDK→ 开源

二:快速上手

1)部署 JDK

  1. 删除系统自带 JDK

    [root@web01 ~]# rpm -qa | grep jdk | grep -v copy | xargs rpm -e --nodeps 
    
  2. 解压 JDK 二进制包

    这里使用二进制包的安装方式,如果使用 Yum 安装则先查看配置的 Yum 仓库所提供的 JDK 软件包。然后根据当前系统架构去指定下载对应版本的 JDK

    yum list | grep openjdk
    
    [root@web01 ~]# tar -xzvf /opt/software/jdk-8u212-linux-x64.tar.gz -C /opt/module/
    
  3. 配置环境变量

    [root@web01 ~]# vim /etc/profile
    
    # JDK
    export JAVA_HOME='/opt/module/jdk1.8.0_212'
    export PATH=${JAVA_HOME}/bin:${PATH}
    
  4. 使环境变量生效

    [root@web01 ~]# source /etc/profile
    
  5. 查看 JDK 版本验证

    [root@web01 ~]# java -version
    java version "1.8.0_212"
    Java(TM) SE Runtime Environment (build 1.8.0_212-b10)
    Java HotSpot(TM) 64-Bit Server VM (build 25.212-b10, mixed mode)
    

2)部署 Tomcat

  1. 解压 Tomcat 二进制包

    [root@web01 ~]# tar -xzvf /opt/software/apache-tomcat-8.5.87.tar.gz -C /opt/module/
    
    # 重命名
    [root@web01 ~]# mv /opt/module/apache-tomcat-8.5.87/ /opt/module/tomcat-8.5.87
    
  2. 启动 Tomcat

    [root@web01 ~]# cd /opt/module/tomcat-8.5.87
    
    [root@web01 tomcat-8.5.87]# ./bin/startup.sh
    Using CATALINA_BASE:   /opt/module/tomcat-8.5.87
    Using CATALINA_HOME:   /opt/module/tomcat-8.5.87
    Using CATALINA_TMPDIR: /opt/module/tomcat-8.5.87/temp
    Using JRE_HOME:        /opt/module/jdk1.8.0_212
    Using CLASSPATH:       /opt/module/tomcat-8.5.87/bin/bootstrap.jar:/opt/module/tomcat-8.5.87/bin/tomcat-juli.jar
    Using CATALINA_OPTS:   
    Tomcat started.
    
  3. 查看 Tomcat 验证

    • 查看 Tomcat 进程

      [root@web01 ~]# ps -ef | grep -i tomcat
      root      50782      1  4 19:30 pts/0    00:00:05 /opt/module/jdk1.8.0_212/bin/java -Djava.util.logging.config.file=/opt/module/tomcat-8.5.87/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /opt/module/tomcat-8.5.87/bin/bootstrap.jar:/opt/module/tomcat-8.5.87/bin/tomcat-juli.jar -Dcatalina.base=/opt/module/tomcat-8.5.87 -Dcatalina.home=/opt/module/tomcat-8.5.87 -Djava.io.tmpdir=/opt/module/tomcat-8.5.87/temp org.apache.catalina.startup.Bootstrap start
      root      54159   1680  0 19:32 pts/0    00:00:00 grep --color=auto -i tomcat
      
    • 查看 Tomcat 端口

      [root@web01 ~]#  ss -lntup | grep 8080
      tcp    LISTEN     0      100    [::]:8080               [::]:*                   users:(("java",pid=50782,fd=52))
      
    • 浏览器访问

      本案例 web01 主机的外网IP为 192.168.2.104

      在这里插入图片描述


三:目录结构

1)目录概述

目录 概述
bin 存放 Tomcat 的 启动与关闭脚本
conf 存放 Tomcat 的配置文件
lib 存放 Tomcat 运行所需的类库
logs 存放 日志文件
webapps 默认的 Web 应用部署目录 ROOT/:默认应用目录(直接访问 http://host:port/ 时打开的应用)
work manager/:Tomcat 自带的管理应用。 tomcat 运行 java 代码的存放代码的目录

2)bin 目录

脚本 说明
startup.sh 启动脚本
shutdown.sh 关闭脚本
catalina.sh Tomcat 的核心控制脚本,实际启动/关闭 Tomcat 都会调用它,可以在里面配置 JVM 参数内存优化

3)conf 目录

文件 说明
server.xml Tomcat 的 核心配置文件
web.xml Tomcat 的 全局 Web 应用配置文件

4)logs 目录

文件 说明
catalina.out Tomcat 的 标准输出日志,记录启动、运行、关闭过程中的关键信息,以及错误堆栈。
常见错误关键字:errorfailedexception
catalina.YYYY-MM-DD.log 按天切割日志
localhost_access_log.YYYY-MM-DD.txt 访问日志,记录客户端的请求信息

总结

📌 本节重点回顾

  • Tomcat 定位:开源 Web 应用服务器,用于运行 Java Web 项目。

  • JDK 基础:JDK = JRE + 开发工具,JRE = JVM + 类库。

  • JDK 部署:解压二进制包 → 配置环境变量 → java -version 验证成功。

  • Tomcat 部署:解压 → 启动 startup.sh → 浏览器访问 http://IP:8080。

  • 目录结构:

    • bin:启动/关闭脚本

    • conf:核心配置文件(server.xml)

    • logs:运行日志

    • webapps:默认应用部署目录

到这里,你已经完成了 从 0 到 1 的 Tomcat 快速上手,具备了最基本的部署与启动能力。

在下一部分,我们将继续深入 —— 学习如何用 systemctl 管理 Tomcat 服务,并实战部署 Java 应用(WAR / JAR 包)。