Centos7安装配置tomcat9并设置自动启动的方法

yizhihongxing

下面是 "Centos7安装配置tomcat9并设置自动启动的方法" 的完整攻略。

1. 安装Tomcat9

1.1 下载Tomcat9二进制包

到Tomcat的官网https://tomcat.apache.org/download-90.cgi下载对应版本的Tomcat二进制包。

例如,下载 Tomcat 9.0.46 的二进制包

$ curl -O https://mirrors.bfsu.edu.cn/apache/tomcat/tomcat-9/v9.0.46/bin/apache-tomcat-9.0.46.tar.gz

1.2 解压Tomcat9

解压下载的二进制包并以 tomcat 为目录名保存

$ tar xzf apache-tomcat-9.0.46.tar.gz
$ mv apache-tomcat-9.0.46 tomcat

1.3 修改Tomcat9配置

更改tomcat/conf/server.xml 配置文件,使Tomcat监听在端口 8080 上并支持 servlet 3.1 规范

...
<Connector port="8080" protocol="HTTP/1.1"
           connectionTimeout="20000"
           redirectPort="8443" />
...
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
                             http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
         version="3.1">
...

1.4 启动Tomcat9

运行 $CATALINA_HOME/bin/startup.sh 启动Tomcat

$ cd tomcat/bin
$ ./startup.sh

使用 curl 命令检查Tomcat是否已在本地主机上运行

$ curl http://localhost:8080/

如果成功运行,则会看到默认欢迎页面

2. 配置Tomcat9自启

2.1 创建 systemd unit 文件

创建 /etc/systemd/system/tomcat.service 文件,内容如下

[Unit]
Description=Apache Tomcat Server
After=syslog.target network.target

[Service]
Type=forking

Environment=JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64
Environment=CATALINA_PID=tomcat.pid
Environment=CATALINA_HOME=/path/to/tomcat
Environment=CATALINA_BASE=/path/to/tomcat
Environment='CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC'
Environment='JAVA_OPTS=-Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom'

ExecStart=/path/to/tomcat/bin/startup.sh
ExecStop=/path/to/tomcat/bin/shutdown.sh

User=tomcat
Group=tomcat
UMask=0007
RestartSec=10
Restart=always

[Install]
WantedBy=multi-user.target

其中需要更改的项

  • Environment=JAVA_HOME=xxx - 应指向您的JDK安装目录
  • Environment=CATALINA_HOMEEnvironment=CATALINA_BASE - 将路径路径指向Tomcat的安装目录
  • UserGroup - 配置Tomcat服务账户和组

2.2 重新加载Systemd

重新加载systemd配置文件,使新建的 tomcat 服务生效

$ systemctl daemon-reload

2.3 启动Tomcat9自启服务

通过 systemd 工具启动服务并将其设置为自启项

$ systemctl start tomcat
$ systemctl enable tomcat

2.4 验证Tomcat是否已成功设置为自启项

使用 systemctl 工具验证是否已将Tomcat服务设置为自启项

$ systemctl is-enabled tomcat

如果控制台输出 enabled ,则表示Tomcat已成功设置为自启项。

示例1:配置防火墙

如果服务器开启了防火墙,在开启Tomcat前需要先将防火墙放行 8080 端口,否则客户端无法连接到Tomcat

$ firewall-cmd --zone=public --add-port=8080/tcp --permanent
$ firewall-cmd --reload

示例2:安装实例

如果您希望运行多个Tomcat实例,则必须为每个实例配置一个单独的 systemd unit 文件。例如,要在服务器上运行两个Tomcat实例(实例1和2):

  1. 配置 Tomcat 实例 1 和 Tomcat 实例 2:
$ tar xzf apache-tomcat-9.0.46.tar.gz
$ mv apache-tomcat-9.0.46 tomcat1
$ cp -R tomcat1 tomcat2
  1. 创建两个 Tomcat 实例,每个实例都有自己的配置文件,在启动时自动按名称绑定到端口:
$ cd tomcat1/conf && cp server.xml server1.xml
$ cd tomcat2/conf && cp server.xml server2.xml
  1. 编辑 /etc/systemd/system/tomcat1.service 和 /etc/systemd/system/tomcat2.service 文件,用适当的路径和用户信息修改上述示例中的 ExecStart 和 User 项。

  2. 启动并开启自起项对于两个实例:

$ systemctl start tomcat1
$ systemctl start tomcat2
$ systemctl enable tomcat1
$ systemctl enable tomcat2

其中, $ systemctl enable SERVICE_NAME 命令会将服务自动设置为自启项。

以上是Centos7安装配置tomcat9并设置自动启动的完整攻略。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Centos7安装配置tomcat9并设置自动启动的方法 - Python技术站

(0)
上一篇 2023年5月19日
下一篇 2023年5月19日

相关文章

  • 详解SpringBoot工程的三种搭建方式

    我来详细讲解这个问题。首先需要注意的是,SpringBoot工程的三种搭建方式主要是指基于不同的构建工具来构建SpringBoot工程,它们分别是:Maven、Gradle和Spring Initializr。 Maven构建方式 利用Maven构建SpringBoot工程是一种非常常见的方式。具体步骤如下: 在Maven的官网下载最新版本的Maven,并安…

    Java 2023年5月15日
    00
  • Java(JDK/Tomcat/Maven)运行环境配置及工具(idea/eclipse)安装详细教程

    下面是Java运行环境配置及工具安装的详细教程,包括JDK、Tomcat、Maven以及IDE(idea和eclipse)的安装和配置。 一、安装JDK 1.下载JDK安装包 你可以在Oracle官网下载适用于你的操作系统的JDK安装包,也可以到JDK官网下载。下载时要注意区分JDK的版本和平台,一般建议选择稳定版本(如JDK8)。 2.安装JDK 运行下载…

    Java 2023年5月19日
    00
  • C#实现异步GET的方法

    针对C#实现异步GET的方法,我们可以参考以下步骤: 第一步:创建HttpClient对象 在C#中实现异步GET请求,我们需要使用HttpClient对象。HttpClient对象是一个可以发送和接收HTTP请求和响应的类,可以在.NET Framework 4.5及更高版本和.NET Core中使用。 我们可以通过以下代码创建一个HttpClient对象…

    Java 2023年5月19日
    00
  • bootstrap weebox 支持ajax的模态弹出框

    Bootstrap是一套UI框架,其中Weebox是一个基于Bootstrap的模态弹出框插件,支持AJAX加载内容。本攻略将详细介绍如何使用Bootstrap Weebox插件实现AJAX加载内容的模态弹出框。 准备工作 引入Bootstrap和jQuery库。 <link rel="stylesheet" href="…

    Java 2023年6月16日
    00
  • hibernate和mybatis对比分析

    文本格式要求: 标题使用#号表示,#号数量表示标题等级,一级标题一个#号,二级标题二个#号,以此类推 代码块使用三个反引号括起来,并标明代码语言 Hibernate和MyBatis对比分析 什么是Hibernate? Hibernate是一个基于Java的ORM框架,即对象关系映射框架。它可以将Java类映射到关系型数据库中的表,使得Java程序员可以使用面…

    Java 2023年5月19日
    00
  • Java实现局域网聊天室功能(私聊、群聊)

    Java实现局域网聊天室功能(私聊、群聊)攻略 1. 功能简介 本文将介绍如何使用Java语言实现一个局域网聊天室,实现私聊和群聊的功能。 局域网聊天室指的是可以在同一局域网内的多台电脑之间进行实时通信,同时支持私聊和群聊。基于此框架,可以扩充出更多的功能,例如文件传输、语音聊天等。 本文所提供的方法并非唯一,但本文介绍的实现方案为Java原生Socket通…

    Java 2023年5月30日
    00
  • SpringBoot使用ExceptionHandler做异常处理

    SpringBoot是一个非常流行的Java框架,其内置了大量的工具和库,可以大大地提升Java开发的效率。 在实际的应用开发中,异常处理是一个非常重要的问题。使用SpringBoot中的ExceptionHandler可以很方便地处理异常,本文将详细讲解如何实现这个功能。 实现步骤 下面是实现SpringBoot使用ExceptionHandler做异常处…

    Java 2023年5月27日
    00
  • Sprint Boot @PatchMapping使用方法详解

    Spring Boot的@Validated的作用与使用方法 在Spring Boot中,@Validated注解用于验证请求参数的有效性。它可以用于验证请求参数的格式、范围、长度等,以确保请求参数的有效性。在本文中,我们将详细介绍@Validated注解的作用和使用方法,并提供两个示例。 @Validated注解的作用 @Validated注解用于验证请求…

    Java 2023年5月5日
    00
合作推广
合作推广
分享本页
返回顶部