关于tomcat如何设置自启动的设置

ops/2024/12/12 22:57:51/

希望文章能给到你启发和灵感~
如果觉得文章对你有帮助的话,点赞 + 关注+ 收藏 支持一下博主吧~

阅读指南
  • 开篇说明
  • 一、基础环境说明
    • 1.1 硬件环境
    • 1.2 软件环境
  • 二、Windows 下的设置服务自启
    • 2.1 服务的注册
    • 2.2 开启自启
  • 三、MacOS下设置服务自启
    • 3.1 创建plist文件
    • 3.2 加载plist文件
  • 四、ubuntu/linux系统 设置服务自启动
    • 4.1 使用Systemd服务
      • 4.1.1 启用并启动服务
      • 4.1.2 检查服务状态
    • 4.2 使用init.d脚本

开篇说明

关于tomcat的自启动服务设置,应该听的很多了,也有很多博主有对应的设置方式,但是还是很多初入运维和开发的伙伴们还是有点不会设置,这篇简单的说说我自己在不同操作系统中的设置方式,毕竟还是一个比较有用的设置;

在这里插入图片描述

一、基础环境说明

考虑环境因素,大家适当的对比自己的软硬件环境情况分析~请仔细阅读硬件、软件环境

1.1 硬件环境

MacOS Monterey 版本 12.6.8 Apple M1
Windows 11 专业版
Ubuntu 2024.04

1.2 软件环境

编译环境:Java 1.8.0_171,tomcat9.0

二、Windows 下的设置服务自启

提示:这里tomcat版本的选择,可去官网下载https://tomcat.apache.org/,这块并没有什么要求;只要能匹配你的操作系统即可;

2.1 服务的注册

这里我以tomcat9.0.3为例设置;下载解压后,双击startup.bat测试是否服务可以访问;

在这里插入图片描述

Windows系统中设置Tomcat自启动,通常可以通过将Tomcat注册为Windows服务来实现。以下是详细的步骤和命令设置;
【1】以管理员身份打开进入cmd命令行;
【2】进入tomcat的目录;
【3】在bin目录下,运行service.bat文件来注册Tomcat为Windows服务。你需要使用install参数,并可以指定服务的名称(如果不指定,通常会使用Tomcat的默认名称)

service.bat install Tomcat9

注册服务:
在这里插入图片描述
有注册,自然有卸载,卸载服务:

service.bat uninstall Tomcat9

在这里插入图片描述

需要注意的:
确保你已经正确安装了Tomcat,并且知道Tomcat的安装路径。此外,Tomcat的bin目录下应该包含service.bat文件(对于某些版本的Tomcat,如Tomcat 8及以上版本,这个文件通常是存在的)。如果bin目录下没有这个文件,你可能需要从Tomcat的官方网站下载带有“windows-”和系统位数的.zip文件,因为某些Tomcat的.tar.gz或.exe安装包可能不包含这个文件。

2.2 开启自启

服务注册成功后,你需要打开“服务”管理器来设置Tomcat服务的启动类型。你可以通过在命令提示符中输入services.msc来打开服务管理器,或者通过开始菜单搜索“服务”来找到它。

在服务管理器中,找到你刚刚注册的Tomcat服务(例如“Tomcat9”),右键点击它,选择“属性”。在“属性”窗口中,将“启动类型”更改为“自动”,然后点击“应用”和“确定”来保存更改。
在这里插入图片描述
在这里插入图片描述
此时你重启电脑,再次访问tomcat的访问地址也能看到小猫咪了;

三、MacOS下设置服务自启

提示:在mac中比较少见会去设置tomcat自启的,毕竟实际场景中更多的是windows和linux等系统作为服务器来部署服务,这里我们就简要提一下;

在macOS中设置Tomcat自启动,主要可以通过配置Launchd服务来实现。Launchd是macOS系统中用于管理后台程序、应用和脚本运行的守护进程,它会在系统启动时加载并运行指定的任务;

3.1 创建plist文件

创建一个plist文件来定义Tomcat的启动配置。plist文件是macOS中用于描述系统服务、应用程序和偏好的XML格式文件;文件名称自定义就好,但是最好见名之意一些好管理;然后文件内容编辑:

<?xml version="1.0" encoding="UTF-8"?>  
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">  
<plist version="1.0">  
<dict>  <key>Label</key>  <string>org.apache.tomcat</string>  <key>ProgramArguments</key>  <array>  <string>/Library/Tomcat/bin/catalina.sh</string>  <!-- tomcat路径 --><string>run</string>  </array>  <key>RunAtLoad</key>  <!-- 自动加载 --><true/>  <key>KeepAlive</key>  <true/>  <key>EnvironmentVariables</key>  <dict>  <key>JAVA_HOME</key>  <string>/usr/libexec/java_home</string> <!-- Java安装路径 -->  </dict>  <key>StandardOutPath</key>  <string>/Users/yourusername/tomcat.stdout.log</string>  <key>StandardErrorPath</key>  <string>/Users/yourusername/tomcat.stderr.log</string>  
</dict>  
</plist>
  1. Label:为Tomcat服务设置一个唯一的标签。
  2. ProgramArguments:指定Tomcat的启动脚本和参数。
  3. RunAtLoad:设置为true表示在系统启动时加载Tomcat。
  4. KeepAlive:设置为true表示如果Tomcat退出,Launchd将尝试重新启动它。
  5. EnvironmentVariables:设置环境变量,如JAVA_HOME。
  6. StandardOutPath和StandardErrorPath:指定Tomcat的标准输出和标准错误日志文件的路径

3.2 加载plist文件

在plist文件保存后,你需要使用launchctl命令来加载它,以便在系统启动时启动Tomcat。在终端执行:

sudo launchctl load -w /Library/LaunchDaemons/你之前定义的plist的文件名

此时你重启mac电脑,就能看到tomcat启动依旧能访问了;

四、ubuntu/linux系统 设置服务自启动

ubuntu中进行相关服务的自启动,有两种方式,一种是用自带的Systemd服务管理器(16.0.4版本以上),一种就是传统的init.d脚本来执行;

4.1 使用Systemd服务

我们需要创建一个文件,首先进入/etc/systemd/system/目录下。你可以使用vim或其他文本编辑器来创建和编辑这个文件。这里,我们创建一个名为tomcat.service的文件:

sudo vim /etc/systemd/system/tomcat.service

然后,在文件中添加以下内容(注意替换JAVA_HOME、CATALINA_HOME等环境变量的值为你的实际路径):

[Unit]  
Description=Tomcat 9 servlet container  
After=network.target  [Service]  
Type=forking  
Environment="JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64" 
Environment="CATALINA_HOME=/usr/local/tomcat"  
Environment="CATALINA_PID=/usr/local/tomcat/temp/tomcat.pid"  
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"  
ExecStart=/usr/local/tomcat/bin/startup.sh  
ExecStop=/usr/local/tomcat/bin/shutdown.sh  [Install]  
WantedBy=multi-user.target

请确保根据你的实际安装路径和环境配置来修改上述文件中的路径和选项。

4.1.1 启用并启动服务

保存并关闭服务文件后,你可以使用以下命令来启用和启动Tomcat服务:

sudo systemctl enable tomcat  
sudo systemctl start tomcat
4.1.2 检查服务状态

你可以使用以下命令来检查Tomcat服务的状态:

sudo systemctl status tomcat

4.2 使用init.d脚本

这个方式是在一些较旧的版本中常常使用的方式,也是最直接的方式;绝大多数喜欢使用传统的init.d脚本来管理服务;
【1】复制catalina.sh到init.d目录

将Tomcat的bin目录下的catalina.sh脚本复制到/etc/init.d目录下,并重命名为tomcat(或其他你喜欢的名称):

sudo cp /usr/local/tomcat/bin/catalina.sh /etc/init.d/tomcat

【2】编辑tomcat脚本

编辑/etc/init.d/tomcat文件,添加必要的启动和停止逻辑。这通常涉及到设置JAVA_HOME、CATALINA_HOME等环境变量,并定义start、stop和restart函数。

【3】添加执行权

sudo chmod +x /etc/init.d/tomcat

【4】更新服务配置(如果使用Systemd)

如果你的系统使用Systemd,你可能还需要创建一个符号链接来将Tomcat服务与系统服务关联起来:

sudo update-rc.d tomcat defaults

【5】检查并启动服务

sudo service tomcat start  # 对于SysVinit系统  
# 或者  
sudo systemctl start tomcat  # 对于Systemd系统

然后,你可以使用service tomcat status或systemctl status tomcat来检查服务的状态


http://www.ppmy.cn/ops/141367.html

相关文章

【Java基础知识】final和static

一、final final 关键字是 Java 中的一个修饰符&#xff0c;用于表示某个变量、方法或者类不能被修改。 final 可以用于修饰类、方法和变量&#xff08;局部变量&#xff0c;成员变量&#xff09;。 1、数据&#xff1a; 声明数据为常量&#xff0c;可以是编译时常量&#xf…

虚幻引擎的工程目录结构

虚幻引擎的工程目录结构如下&#xff1a; .idea/.vs&#xff1a;用于IDE&#xff08;如IntelliJ IDEA或Visual Studio&#xff09;的项目配置文件&#xff0c;包含工程设置和解决方案文件。 Binaries&#xff1a;存放编译后的可执行文件和相关的动态链接库&#xff08;DLL&…

分布式光伏电站中电能质量如何监测和治理?

1.概述 随着全球对可再生能源需求的增加&#xff0c;分布式光伏电站的建设和发展迅速。然而&#xff0c;分布式光伏电站的运行过程中面临着一系列问题&#xff0c;比如导致企业关口计量点功率因数过低、谐波污染等。这些问题不仅影响光伏电站自身的运行效率&#xff0c;还会对…

uniapp中的@tap与@click:点击事件的微妙差异

在uniapp的开发过程中&#xff0c;我们经常会遇到两种点击事件&#xff1a;tap和click。虽然它们都是点击事件&#xff0c;但在实际使用中却存在一些微妙的差异。本文将详细解析这两种事件的区别&#xff0c;帮助开发者更好地理解和应用。 首先&#xff0c;让我们来看看它们的…

【Linux】grep命令

grep 是一个非常强大的文本搜索工具&#xff0c;它允许你搜索文件中的文本行&#xff0c;并输出匹配的行。以下是一些基本的 grep 命令使用案例&#xff0c;以及它们的解释&#xff1a; 1. 基础搜索 命令&#xff1a; grep "search_term" filename 解释&#xff…

CSS系列(5)-- Grid 布局详解

前端技术探索系列&#xff1a;CSS Grid 布局详解 &#x1f4cf; 致读者&#xff1a;掌握终极布局系统 &#x1f44b; 前端开发者们&#xff0c; 今天我们将深入探讨 CSS Grid 布局&#xff0c;这是最强大的 CSS 布局系统。通过本文&#xff0c;你将掌握如何使用 Grid 创建复…

#HarmonyOS篇: 学习资料

学习课堂 https://developer.huawei.com/consumer/cn/training/ https://developer.huawei.com/consumer/cn/doc/start/training-introduction-0000001181392655 华为开发者指导手册 https://developer.huawei.com/consumer/cn/doc/start/guidebook-0000001056335559 博客…

真正高水平的一流领导,从不和员工打成一片,这3点原因太真实

真正高水平的一流领导&#xff0c;从不和员工打成一片&#xff0c;这3点原因太真实 第一个&#xff1a;分化团队 在团队管理过程中&#xff0c;如果人不多&#xff0c;那还好。 可一旦人数多了&#xff0c;领导就不可能面面俱到&#xff0c;顾及到每一个人。 肯定会出现&am…