写在前面:博主是一只经过实战开发历练后投身培训事业的“小山猪”,昵称取自动画片《狮子王》中的“彭彭”,总是以乐观、积极的心态对待周边的事物。本人的技术路线从Java全栈工程师一路奔向大数据开发、数据挖掘领域,如今终有小成,愿将昔日所获与大家交流一二,希望对学习路上的你有所助益。同时,博主也想通过此次尝试打造一个完善的技术图书馆,任何与文章技术点有关的异常、错误、注意事项均会在末尾列出,欢迎大家通过各种方式提供素材。

  • 对于文章中出现的任何错误请大家批评指出,一定及时修改。
  • 有任何想要讨论和学习的问题可联系我:zhuyc@vip.163.com。
  • 发布文章的风格因专栏而异,均自成体系,不足之处请大家指正。

Tomcat设置开机启动 - CentOS(结尾附视频)

本文关键字:CenOS、开机启动、Tomcat、开机脚本、系统服务

文章目录

  • Tomcat设置开机启动 - CentOS(结尾附视频)
    • 一、前置环境
      • 1. JDK
      • 2. Tomcat
    • 二、配置开机启动
      • 1. 方法一:修改开机脚本
      • 2. 方法二:添加系统服务
    • 三、视频直达

之前有粉丝私信说想要学习一下如何在CentOS中配置Tomcat自动启动,如今排期已到,安排~

一、前置环境

1. JDK

Tomcat的运行需要JDK环境,不同版本的Tomcat需要对应不同版本的JDK,以目前的版本来说,基本使用JDK 8就可以满足所有版本的需要。如果需要详细查看版本对应表,可以查看Tomcat官网的whichversion。

解压安装步骤可以参考:JDK的解压安装 - CentOS(结尾附视频)。

2. Tomcat

目前Tomcat的最新版本为10.1,8.5版本基本已经可以满足绝大部分开发,也是一个比较稳定的版本。各版本的配置方式几乎无差别,本文以Tomcat 9为例。

解压安装步骤可以参考:JDK的解压安装 - CentOS(结尾附视频)。

二、配置开机启动

1. 方法一:修改开机脚本

CentOS系统启动时会执行**/etc/rc.d/rc.local**,这个方法也是一个比较通用的方法,我们可以将想要执行的命令写在这个文件中,需要注意的是要预先指定环境变量(设置在/etc/profile中的环境变量此时不会读取)。
我们可以预先写一个脚本,把所有需要用到的配置和执行的内容全部写进去,然后在rc.local中直接执行这个脚本。

  • 新建boot-startup.sh

可以把这个文件放在任意目录,但需要有执行权限。

export JAVA_HOME=/opt/jdk1.8.0_301
export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin
export CATALINA_HOME=/opt/apache-tomcat-9.0.56
/opt/apache-tomcat-9.0.56/bin/catalina.sh start

  • 修改/etc/rc.d/rc.local

重要:在CentOS 7系统中需要给**/etc/rc.d/rc.local**添加执行权限(/etc/rc.local只是链接文件)。

/opt/apache-tomcat-9.0.56/bin/boot-startup.sh


配置时只需要将家目录设置为自己的安装目录即可。

2. 方法二:添加系统服务

这一方法将Tomcat添加到系统服务中,可以通过服务管理命令进行控制,也可以比较方便的设置开机自动启动。

  • 新建setenv.sh

在Tomcat的bin目录下新建setenv.sh文件,其中需要设置tomcat的pid文件存放路径。

CATALINA_PID="$CATALINA_BASE/tomcat.pid"
  • 修改catalina.sh

在文件中配置JAVA_HOMEJRE_HOME,放在注释结束后,较为靠前的部分。

export JAVA_HOME=/opt/jdk1.8.0_301
export JRE_HOME=/opt/jdk1.8.0_301/jre

  • 添加tomcat.service

在**/usr/lib/systemd/system下新建tomcat.service**文件,内容如下:

[Unit]
Description=Tomcat
After=network.target remote-fs.target nss-lookup.target[Service]
Type=forking
TimeoutSec=0
PIDFile=/opt/apache-tomcat-9.0.56/tomcat.pid
ExecStart=/opt/apache-tomcat-9.0.56/bin/startup.sh
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true[Install]
WantedBy=multi-user.target

PIDFileExecStart分别设置为pid文件所在位置和启动脚本路径即可。

  • 添加至开机启动项
systemctl enable tomcat.service

  • 重启后验证


在访问测试时注意关闭防火墙或开放对应的端口(默认8080)。

三、视频直达

视频地址:https://www.bilibili.com/video/BV1VM4y1w7uj/,喜欢的小伙伴儿一定要三连加关注哦~

Tomcat设置开机启动 - CentOS

写在结尾:作者力求做到将每个知识点细化,并且对于有关联的知识点都会使用传送门挂载链接。文章采用:“文字 + 配图 + 视频”的方式来进行展现,均是挤时间所作,希望看到这里能留下评论点个赞,略表支持!

扫描下方二维码,加入官方粉丝微信群,可以与我直接交流,还有更多福利哦~

Tomcat设置开机启动 - CentOS(结尾附视频)相关推荐

  1. centos7 tomcat 设置开机启动

    目录 安装tomcat 方法一.设置开机自启动 删除开机自启动 方法二.设置开机自启动之init.d 方法三.设置开机自启动之supervisor 安装jdk 参考 <linux 安装jdk y ...

  2. Hadoop全分布式部署 - CentOS(结尾附视频)

    写在前面:博主是一只经过实战开发历练后投身培训事业的"小山猪",昵称取自动画片<狮子王>中的"彭彭",总是以乐观.积极的心态对待周边的事物.本人的技 ...

  3. tomcat安装并设置开机启动

    tomcat安装并设置开机启动 服务器系统CentOS 6.6 tomcat服务器:172.30.65.176 tomcat部署 1).先删除机器本身自带的jdk [root@localhosthua ...

  4. Centos设置开机启动Apache和Mysql[总结]

    1.前言 最近学习搭建wordpress,需要用到apahce和mysql.我是下载源代码进行安装的,安装在/url/local目录下,每次开机都需要手动启动,有点麻烦.如是想设置开机启动,从网上查了 ...

  5. Centos添加supervisor为服务,启动/关闭,设置开机启动服务

    关于Supervisor的安装与配置,请参考 Supervisor,进程管理利器. 让程序后台运行! . Supervisor设置开机启动有很多,这里以Centos为例,仅供参考! 根据不同的系统,有 ...

  6. JDK的解压安装 - CentOS(结尾附视频)

    写在前面:博主是一只经过实战开发历练后投身培训事业的"小山猪",昵称取自动画片<狮子王>中的"彭彭",总是以乐观.积极的心态对待周边的事物.本人的技 ...

  7. CentOS 7.6 64位安装docker并设置开机启动

    步骤如下 安装docker.docker-compose yum -y install docker-io docker-compose 启动docker service docker start 设 ...

  8. linux怎么设置tomcat自动启动,linux添加tomcat服务并设置开机启动

    一,脚本文件,编辑好后放在/etc/rc.d/init.d/下面 #!/bin/sh #chkconfig: 2345 10 90 # description: Starts and Stops th ...

  9. Apple芯片Mac安装ARM版Win10完美教程(结尾附视频)

    写在前面:博主是一只经过实战开发历练后投身培训事业的"小山猪",昵称取自动画片<狮子王>中的"彭彭",总是以乐观.积极的心态对待周边的事物.本人的技 ...

  10. MySQL 5.7 界面安装 - Windows(结尾附视频)

    写在前面:博主是一只经过实战开发历练后投身培训事业的"小山猪",昵称取自动画片<狮子王>中的"彭彭",总是以乐观.积极的心态对待周边的事物.本人的技 ...

最新文章

  1. 变量/值类型/引用类型/常量/枚举
  2. linux 批量删除
  3. [转] 最近点对距离问题
  4. Visual C++中 #include stdafx.h 头文件的用法
  5. pycharm导入自己写的模块时,模块下方出现红色波浪线的解决方案
  6. C程序设计导引(1)
  7. 信息系统项目管理07——项目成本管理
  8. LINK : fatal error LNK1104: 无法打开文件“ucrtd.lib”
  9. 重装上阵两个人合体机器人_又一部热门定档!林超贤、彭于晏领衔《紧急救援》重装定档2021年大年初一...
  10. getset原子性 redis_对比各类分布式锁缺陷,抓住Redis分布式锁实现命门
  11. php生成照片流图片,phpcmsv9设计照片流瀑布流等页面按比例等宽完美缩略图方案...
  12. 中国史上最牛的网管——李兴平
  13. AD15 PCB笔记
  14. win7硬盘安装工具_扔掉U盘和光驱,一键从硬盘安装操作系统,这个硬盘装机工具真爽...
  15. [转载] 达特茅斯学院 Dartmouth College
  16. Excel 2010 VBA 入门 109 获取某列最后非空单元格行号
  17. vue中数字转金额格式
  18. android 从app跳转到微信小程序和微信没有设置浮动权限 打不开小程序
  19. Mac 通过adb拉取dropbox中的内容
  20. c#时分秒毫秒微妙_c# - 将秒转换为(小时:分钟:秒:毫秒)时间的最佳方法是什么?...

热门文章

  1. 很少人知道的无人机飞行原理
  2. Unmapped Spring configuration files found. Please configure Spring facet or use ‘Create Default Con
  3. 阿里云服务器怎么正确使用OSS内网地址?
  4. vue3.2 lottie-web动画+引入json动画
  5. selenium+python模拟键盘操作
  6. mysql中一个字符等于几个字节_细说一个汉字等于几个字符,以及汉字,字符,字节,位之间的关系...
  7. 制作一个启动软盘并用bochs模拟器启动
  8. java 实现 PDF 转 TIF【黑白版】
  9. 计算机中丨kb表示的字节数是,5mb是多少kb?计算机中5mb是多少字节?2MB表示多少字节?4mb是多少字节...
  10. python3中文长度_python3获得汉字长度