一文读懂Tomcat应用之 CentOS安装部署Tomcat服务

目录

一、Tomcat概述

(一)、Tomcat安装目录简介

(二)、Tomcat配置文件简介

1、server.xml文件

2、web.xml

3、context.xml

4、tomcat-users.xml

5、logging.properties

二、Tomcat安装部署

(一)、环境规划

(二)、安装JDK

1、下载JDK二进制安装包

2、解压JDK二进制安装包

3、验证JDK是否安装成功

4、配置JDK环境变量

(三)、安装部署Tomcat

1、下载Tomcat二进制安装包

2、解压Tomcat二进制安装包

3、配置JAVA_HOME参数

4、启动Tomcat服务

5、关闭Tomcat服务

三、Tomcat注册系统服务(可选)

(一)、创建tomcat.service文件

(二)、注册Tomcat服务并设置开机自启动Tomcat服务

(三)、启动Tomcat服务

(四)、关闭Tomcat服务


一、Tomcat概述

        ‌Tomcat‌是Java领域最著名的开源Web服务器和Servlet容器,由Apache软件基金会维护。Tomcat实现了Java Servlet、JavaServer Pages (JSP)和WebSocket等规范,是部署和运行Java Web应用程序的核心工具之一‌。

(一)、Tomcat安装目录简介

Tomcat二进制安装包解压后,安装路径下会有如下的目录结构。

bin目录:该目录下存放启动、关闭Tomcat服务等相关的二进制可执行文件。
conf目录:该目录下存放所有Tomcat服务相关的配置文件。
lib目录:该目录下存放Tomcat服务器的核心类库(JAR文件),若需要扩展Tomcat功能,也可将第三方类库复制到该路径下。
logs目录:该目录下存放Tomcat服务运行相关的日志文件。
webapps:该目录用于部署 Web应用,其中子目录ROOT是默认根应用,index.jsp即为我们访问http://localhost:8080/的默认页面。
temp:该目录下保存应用运行过程中生成的临时文件。
work:该目录下保存应用运行过程中编译生成的class文件。该目录可以删除,每次启动Tomcat服务器时会重建该目录。

(二)、Tomcat配置文件简介

Tomcat服务的配置文件都在conf目录下,下面介绍主要的配置文件。

1、server.xml文件

        server.xml文件是Tomcat最核心的配置文件,主要用于定义Tomcat服务端口、连接器、虚拟主机等核心参数。该配置文件修改后,必须重启Tomcat服务才能使其生效。

例如,修改Tomcat服务端口的配置如下:

此处将Tomcat服务的端口由默认的8080端口修改为8888端口。

2、web.xml

web.xml文件主要用于配置默认Servlet、MIME类型映射、定义全局过滤器、监听器等。

3、context.xml

context.xml文件主要用于配置数据源、JNDI资源、定义全局会话管理策略等。

4、tomcat-users.xml

tomcat-users.xml文件主要用于配置用户认证,如定义管理员、角色权限等。

例如,新增用户的配置如下:

新增了admin用户,属于manager-gui角色。

5、logging.properties

logging.properties文件主要用于Tomcat日志输出格式、日志级别等相关的配置。


二、Tomcat安装部署

(一)、环境规划

服务器IP

Tomcat01:192.168.110.166

系统版本

CentOS Linux release 7.7.1908 (Core)

关闭防火墙

此处为方便演示,直接关闭防火墙。生产环境可以根据实际需求开通服务器防火墙策略。

systemctl stop firewalld

systemctl stop iptables

JDK版本

作者当前服务器位数是64位,所以此处使用 jdk-21_linux-x64 版本,可以根据实际情况选择合适的版本。

二进制安装包官方下载地址:https://download.oracle.com/java/21/latest/jdk-21_linux-x64_bin.tar.gz

Tomcat版本

此处使用 v11.0.6 版本,可以根据实际情况选择合适的版本。

二进制安装包官方下载地址:https://dlcdn.apache.org/tomcat/tomcat-11/v11.0.6/bin/apache-tomcat-11.0.6.tar.gz

(二)、安装JDK

1、下载JDK二进制安装包

此处将二进制安装包下载至/usr/local/路径下。

[root@Tomcat01 ~]# cd /usr/local/
[root@Tomcat01 local]# wget https://download.oracle.com/java/21/latest/jdk-21_linux-x64_bin.tar.gz

2、解压JDK二进制安装包

将JDK二进制安装包直接解压在/usr/local/目录下即可。

[root@Tomcat01 ~]# cd /usr/local/
[root@Tomcat01 local]# tar -zxvf jdk-21_linux-x64_bin.tar.gz

3、验证JDK是否安装成功

进入JDK二进制文件目录/usr/local/jdk-21.0.7/bin,执行java命令进行验证

[root@Tomcat01 ~]# cd /usr/local/jdk-21.0.7/bin
[root@Tomcat01 bin]# ./java -version

出现JDK版本信息,说明安装成功。

4、配置JDK环境变量

在/etc/profile文件中配置JDK的安装目录以及二进制文件目录。

配置JDK环境变量

[root@Tomcat01 ~]# vim /etc/profile

在文件的最后加入如下内容:

# JAVA
export JAVA_HOME=/usr/local/jdk-21.0.7
export PATH=$PATH:$JAVA_HOME/bin

使环境变量生效

[root@Tomcat01 ~]# source /etc/profile

验证配置

[root@Tomcat01 ~]# java -version

出现JDK版本信息,说明配置成功。

(三)、安装部署Tomcat

1、下载Tomcat二进制安装包

此处将Tomcat二进制安装包下载至/usr/local/路径下。

[root@Tomcat01 ~]# cd /usr/local/
[root@Tomcat01 local]# wget https://dlcdn.apache.org/tomcat/tomcat-11/v11.0.6/bin/apache-tomcat-11.0.6.tar.gz

2、解压Tomcat二进制安装包

将Tomcat二进制安装包解压在/usr/local/目录下即可。

[root@Tomcat01 ~]# cd /usr/local/
[root@Tomcat01 local]# tar -zxvf apache-tomcat-11.0.6.tar.gz

3、配置JAVA_HOME参数

        需要在/usr/local/apache-tomcat-11.0.6/bin/catalina.sh文件中加入JAVA_HOME参数,参数的值是JDK的安装目录。若不加此参数,将Tomcat服务注册成系统服务时,会导致服务启动失败。

[root@Tomcat01 ~]# vim /usr/local/apache-tomcat-11.0.6/bin/catalina.sh

加入如下内容:

export JAVA_HOME=/usr/local/jdk-21.0.7

4、启动Tomcat服务

启动Tomcat服务

[root@Tomcat01 ~]# cd /usr/local/apache-tomcat-11.0.6/bin
[root@Tomcat01 bin]# ./startup.sh

查看Tomcat服务8080端口是否启动

[root@Tomcat01 bin]# netstat -tnlp

可见8080端口在列表中。

查看Tomcat服务进程是否正常

[root@Tomcat01 bin]# ps -ef | grep -v “grep” | grep tomcat –color

或者

[root@Tomcat01 bin]# ps -ef | grep -v “grep” | grep java –color

可见Tomcat服务进程信息。

浏览器访问验证

在浏览器中访问Tomcat服务地址:http://192.168.110.166:8080/

可见Tomcat服务可以正常访问。

以上说明Tomcat服务安装成功!

5、关闭Tomcat服务

关闭Tomcat服务

[root@Tomcat01 ~]# cd /usr/local/apache-tomcat-11.0.6/bin
[root@Tomcat01 bin]# ./shutdown.sh

查看Tomcat服务8080端口是否关闭

[root@Tomcat01 bin]# netstat -tnlp

可见8080端口已经不在列表。

查看Tomcat服务进程是否关闭

[root@Tomcat01 bin]# ps -ef | grep -v “grep” | grep tomcat –color

或者

[root@Tomcat01 bin]# ps -ef | grep -v “grep” | grep java –color

可见已经没有Tomcat服务进程信息。

浏览器访问验证

在浏览器中访问Tomcat服务地址:http://192.168.110.166:8080/

可见Tomcat服务已经无法访问。

以上说明Tomcat服务已经关闭!


三、Tomcat注册系统服务(可选)

        CentOS系统中使用systemd进行系统和服务的管理,可以根据需要将相关的服务进程配置成守护进程,并通过systemctl命令对守护进程进行监测和控制。

        为了方便Tomcat服务的维护和管理,可以把Tomcat服务注册成系统服务,由systemd进行服务管理。

(一)、创建tomcat.service文件

创建tomcat.service文件,通过systemd来管理Nginx服务。

[root@Tomcat01 ~]# cat > /usr/lib/systemd/system/tomcat.service << EOF
[Unit]
Description=The Tomcat Server
After=network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
ExecStart=/usr/local/apache-tomcat-11.0.6/bin/startup.sh
ExecStop=/usr/local/apache-tomcat-11.0.6/bin/shutdown.sh

[Install]
WantedBy=multi-user.target
EOF

tomcat.service文件详解如下:

[Unit]                                                                                             #记录service文件的通用信息
Description=The Tomcat Server                                                   #Nginx服务描述信息
After=network.target remote-fs.target nss-lookup.target              #Nginx服务启动依赖,在指定服务之后启动

[Service]                                                                                        #记录service文件的service信息
Type=forking                                                                                 #标准UNIX Daemon使用的启动方式
ExecStart=/usr/local/apache-tomcat-11.0.6/bin/startup.sh            #启动Tomcat服务
ExecStop=/usr/local/apache-tomcat-11.0.6/bin/shutdown.sh        #关闭Tomcat服务

[Install]                                                                                           #记录service文件的安装信息
WantedBy=multi-user.target                                                          #多用户环境下启用

(二)、注册Tomcat服务并设置开机自启动Tomcat服务

[root@Tomcat01 ~]# systemctl daemon-reload && systemctl enable tomcat

(三)、启动Tomcat服务

启动Tomcat服务

[root@Tomcat01 ~]# systemctl start tomcat

查看Tomcat服务状态信息

[root@Tomcat01 ~]# systemctl status tomcat

可见Tomcat服务是active状态。

查看Tomcat服务8080端口是否启动

[root@Tomcat01 ~]# netstat -tnlp

可见8080端口在列表中。

查看Tomcat服务进程是否正常

[root@Tomcat01 ~]# ps -ef | grep -v “grep” | grep tomcat –color

或者

[root@Tomcat01 ~]# ps -ef | grep -v “grep” | grep java –color

可见Tomcat服务进程信息。

浏览器访问验证

在浏览器中访问Tomcat服务地址:http://192.168.110.166:8080/

可见Tomcat服务可以正常访问。

以上说明Tomcat服务启动成功!

(四)、关闭Tomcat服务

关闭Tomcat服务

[root@Tomcat01 ~]# systemctl stop tomcat

查看Tomcat服务状态信息

[root@Tomcat01 ~]# systemctl status tomcat

可见Tomcat服务是failed状态。

查看Tomcat服务8080端口是否关闭

[root@Tomcat01 ~]# netstat -tnlp

可见8080端口已经不在列表中。

查看Tomcat服务进程是否关闭

[root@Tomcat01 ~]# ps -ef | grep -v “grep” | grep tomcat –color

或者

[root@Tomcat01 ~]# ps -ef | grep -v “grep” | grep java –color

可见已经没有Tomcat服务进程信息。

浏览器访问验证

在浏览器中访问Tomcat服务地址:http://192.168.110.166:8080/

可见Tomcat服务已经无法访问。

以上说明Tomcat服务已经关闭!


© 版权声明
THE END
如果内容对您有所帮助,就支持一下吧!
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容