一、redis添加开机自启

1、添加服务配置文件

[root@test system]# vim /etc/systemd/system/redis-server.service

2、服务配置文件内容(前面红色字体是启动脚本,后面红色字体是配置文件);注意️ 服务文件路径要写绝对路径

[Unit]
Description=redis-server
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/bin/redis-server /etc/redis.conf
PrivateTmp=true [Install]
WantedBy=multi-user.target

3、重新加载服务的配置文件

[root@test system]# systemctl daemon-reload

4、启动redis服务

[root@test system]# systemctl start redis-server.service

5、设置开机自启

[root@test system]# systemctl enable redis-server.service

6、查看redis服务运行状态

[root@test system]# systemctl status redis-server.service
● redis-server.service - redis-server
Loaded: loaded (/etc/systemd/system/redis-server.service; enabled; vendor preset: disabled)
Active: active (running) since 五 -- :: CST; 1h 53min ago
Process: ExecStart=/usr/local/bin/redis-server /etc/redis.conf (code=exited, status=/SUCCESS)
Main PID: (redis-server)
CGroup: /system.slice/redis-server.service
└─ /usr/local/bin/redis-server *:
9月 :: zx- systemd[]: Starting redis-server...
9月 :: zx- systemd[]: Started redis-server.

二、Tomcat添加开机自启

1、添加服务配置文件

[root@test system]# vim /etc/systemd/system/tomcat-server.service

2、配置服务文件内容

[Unit]
Description=tomcat
After=network.target
[Service]
Type=forking
ExecStart=/www/server/tomcat/bin/startup.sh
ExecStop=/www/server/tomcat/bin/shutdown.sh
ExecReload=/bin/kill -s HUP $MAINPID
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target

3、重新加载服务的配置文件

[root@test system]# systemctl daemon-reload

4、启动tomcat服务  

[root@test system]# systemctl start tomcat-server.service  

5、设置开机自启

[root@001 system]# systemctl enable tomcat-server.service

6、查看tomcat服务状态

[root@test system]# systemctl status redis-server.service
  • 有时候可能报错错误“Neither the JAVA_HOME nor the JRE_HOME environment variable is defined”
  • 原因服务启动没有状态jdk环境变量配置,有可能你没有在/etc/profile中配置,
  • 如果配置还是不起作用可以在tomcat/bin/下找到setclasspath.sh脚本在头部添加两行信息即可解决
  • export JAVA_HOME=/opt/jdk1.8.0_102/
    export JRE_HOME=/opt/jdk1.8.0_102/jre/ 
JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk/
JAVA_JRE=/usr/lib/jvm/java-1.8.0-openjdk/jre/
PATH=$PATH:$JAVA_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME CLASSPATH PATH
● tomcat-server.service - Internet of things platform
Loaded: loaded (/etc/systemd/system/tomcat-server.service; enabled; vendor preset: disabled)
Active: failed (Result: exit-code) since 五 2020-09-18 16:29:26 CST; 22s ago
Process: 14373 ExecStart=/www/server/tomcat/bin/startup.sh (code=exited, status=1/FAILURE)
9月 18 16:29:26 test systemd[1]: Starting Internet of things platform...
9月 18 16:29:26 test startup.sh[14373]: Neither the JAVA_HOME nor the JRE_HOME environment variable is defined
9月 18 16:29:26 test startup.sh[14373]: At least one of these environment variable is needed to run this program
9月 18 16:29:26 test systemd[1]: tomcat-server.service: control process exited, code=exited status=1
9月 18 16:29:26 test systemd[1]: Failed to start Internet of things platform.
9月 18 16:29:26 test systemd[1]: Unit tomcat-server.service entered failed state.
9月 18 16:29:26 test systemd[1]: tomcat-server.service failed.

三、SpringBoot添加开机自启

1、添加服务配置文件

[root@test system]# vim /etc/systemd/system/spring-boot-server.service

2、服务配置文件内容

[Unit]
Description=SpringBoot
After=network.target mariadb.target
[Service]
Type=forking
ExecStart=/usr/bin/java -jar /spring/spring-boot.jar
ExecReload=/usr/bin/ps -ef | grep spring-boot.jar | grep -v grep | awk '{print $2}' | xargs kill -9 && java -jar/spring/spring-boot.jar
ExecStop=/usr/bin/ps -ef | grep spring-boot.jar | grep -v grep | awk '{print $2}' | xargs kill -9
Restart=always
[Install]
WantedBy=multi-user.target

3、重新加载服务的配置文件

[root@test system]# systemctl daemon-reload

4、启动SprinBoot服务

[root@test system]# systemctl start spring-boot-server.service

5、设置开机自启

[root@test system]# systemctl enable spring-boot-server.service

6、查看SprinBoot服务运行状态

[root@test system]# systemctl status spring-boot-server.service
● spring-boot-server.service - SpringBoot
Loaded: loaded (/etc/systemd/system/spring-boot-server.service; enabled; vendor preset: disabled)
Active: activating (start) since 五 2020-09-18 21:45:16 CST; 37s ago
Control: 19563 (java)
CGroup: /system.slice/spring-boot-server.service
└─19563 /usr/bin/java -jar /spring/spring-boot.jar 9月 18 21:45:26 test java[19563]: 2020-09-18 21:45:26:522|INFO |main|springfox.documentation.spring.web.readers.operation.CachingOperationNameGenerator| Generating uniqu...geUsingGET_9
9月 18 21:45:26 test java[19563]: 2020-09-18 21:45:26:522|DEBUG|main|springfox.documentation.spring.web.readers.operation.OperationModelsProvider| Adding return paramete...mmon/Result;
9月 18 21:45:26 test java[19563]: 2020-09-18 21:45:26:523|DEBUG|main|springfox.documentation.spring.web.readers.operation.OperationModelsProvider| Reading parameters mod...Method |add|
9月 18 21:45:26 test java[19563]: 2020-09-18 21:45:26:523|DEBUG|main|springfox.documentation.spring.web.readers.operation.OperationModelsProvider| Finished reading param...Method |add|
9月 18 21:45:26 test java[19563]: 2020-09-18 21:45:26:523|DEBUG|main|springfox.documentation.swagger.readers.operation.SwaggerOperationModelsProvider| Reading parameters...Method |add|
9月 18 21:45:26 test java[19563]: 2020-09-18 21:45:26:523|DEBUG|main|springfox.documentation.spring.web.scanners.ApiModelReader| Generated parameter model id: Result, na...a: {} models
9月 18 21:45:26 test java[19563]: 2020-09-18 21:45:26:523|DEBUG|main|springfox.documentation.spring.web.scanners.ApiModelReader| Adding a new model with key Result
9月 18 21:45:53 iZwz9busydk4rcachg5ykzZ java[19563]: 2020-09-18 21:45:53:650|DEBUG|DefaultQuartzScheduler_QuartzSchedulerThread|org.quartz.core.QuartzSchedulerThread| batch acquisition of 1 triggers
9月 18 21:45:53 test java[19563]: 2020-09-18 21:45:53:667|DEBUG|quartzScheduler_QuartzSchedulerThread|org.quartz.core.QuartzSchedulerThread| batch acquisition of 0 triggers
Hint: Some lines were ellipsized, use -l to show in full.

补充服务配置文件

Description:描述服务
After:描述服务类别
[Service]服务运行参数的设置
Type=forking是后台运行的形式
ExecStart为服务的具体运行命令
ExecReload为重启命令
ExecStop为停止命令
PrivateTmp=True表示给服务分配独立的临时空间
注意:[Service]的启动、重启、停止命令全部要求使用绝对路径
[Install]运行级别下服务安装的相关设置,可设置为多用户,即系统运行级别为3

配置文件参考链接

Centos 7 redis、tomcat、Spring Boot添加开机自启服务的更多相关文章

  1. Redis单机部署、添加开机自启、配置参数

    1.Redis简介 redis是使用C语言编写的开源的,支持网络,基于内存,可持久性的键值对存储数据库,2013年5月之前,Redis是最流行的键值对存储数据库,Redis采用内存数据集,支持多种数据 ...

  2. linux中添加开机自启服务的方法

    往文件/etc/rc.d/rc.local中追加内容即可,如: /mongodb/start_mongoDB.sh

  3. Spring Boot 添加JSP支持【转】

    Spring Boot 添加JSP支持 大体步骤: (1)            创建Maven web project: (2)            在pom.xml文件添加依赖: (3)     ...

  4. Https系列之二:https的SSL证书在服务器端的部署,基于tomcat,spring boot

    Https系列会在下面几篇文章中分别作介绍: 一:https的简单介绍及SSL证书的生成二:https的SSL证书在服务器端的部署,基于tomcat,spring boot三:让服务器同时支持http ...

  5. Spring Boot 和 Docker 实现微服务部署

    Spring boot 开发轻巧的微服务提供了便利,Docker 的发展又极大的方便了微服务的部署.这篇文章介绍一下如果借助 maven 来快速的生成微服务的镜像以及快速启动服务. 其实将 Sprin ...

  6. Spring boot学习1 构建微服务:Spring boot 入门篇

    Spring boot学习1 构建微服务:Spring boot 入门篇 Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框 ...

  7. spring boot / cloud (十四) 微服务间远程服务调用的认证和鉴权的思考和设计,以及restFul风格的url匹配拦截方法

    spring boot / cloud (十四) 微服务间远程服务调用的认证和鉴权的思考和设计,以及restFul风格的url匹配拦截方法 前言 本篇接着<spring boot / cloud ...

  8. spring boot / cloud (二十) 相同服务,发布不同版本,支撑并行的业务需求

    spring boot / cloud (二十) 相同服务,发布不同版本,支撑并行的业务需求 有半年多没有更新了,按照常规剧本,应该会说项目很忙,工作很忙,没空更新,吧啦吧啦,相关的话吧, 但是细想想 ...

  9. Spring boot 零配置开发微服务

    2018年12月29日星期六 体验Spring boot 零配置开发微服务 1.为什么要用Spring  boot? 1.1 简单方便.配置少.整合了大多数框架 1.2 适用于微服务搭建,搭建的微服务 ...

随机推荐

  1. 源码解析JDK1.8-HashMap链表成环的问题解决方案

    前言 上篇文章详解介绍了HashMap在JDK1.7版本中链表成环的原因,今天介绍下JDK1.8针对HashMap线程安全问题的解决方案. jdk1.8 扩容源码解析 public class Has ...

  2. char **指针动态分配地址空间

    1. 定义char **类型变量,初始化为NULL 2. 分配行指针数组空间 3. 为每行分配空间 4. 释放每行的空间 5. 释放二维指针 void main() { char **pointer= ...

  3. linux,运维,部署 相关

    基础 linux基础命令 linux基础 部署 docker

  4. HDU 6609 离散化+权值线段树

    题意 有一个长度为\(n\)的数组W; 对于每一个\(i\)(\(1<=i<=n\)),你可以选择中任意一些元素W[k] (\(1<=k<i\)),将他们的值改变为0,使得\( ...

  5. A distributional code for value in dopamine-based reinforcement learning

    郑重声明:原文参见标题,如有侵权,请联系作者,将会撤销发布! Nature 2020 汇报PPT: 链接:https://pan.baidu.com/s/1RWx6miX6iZUNgNfV9B69FQ ...

  6. Spark SQL dropDuplicates

    spark sql 数据去重 在对spark sql 中的dataframe数据表去除重复数据的时候可以使用dropDuplicates()方法 dropDuplicates()有4个重载方法 第一个 ...

  7. AtCoder Beginner Contest 177 题解

    AtCoder Beginner Contest 177 题解 目录 AtCoder Beginner Contest 177 题解 A - Don't be late B - Substring C ...

  8. 初学WebGL引擎-BabylonJS:第8篇-阴影网格与活动

    [playground]-shadows(阴影) 源码 var createScene = function () { var scene = new BABYLON.Scene(engine); / ...

  9. Spine学习三 - 同时播放两个动画

    这个效果和 Unity的动画分层有点儿像,比如 一个人有一个跑的动画,还有一个站在原地挥手的动画,Unity可以通过动画分层,让人物只需要使用这两个动画实现边跑边挥手的动画效果. 首先介绍一下Spin ...

  10. AcWing 285. 没有上司的舞会(树形dp入门)

    Ural大学有N名职员,编号为1~N. 他们的关系就像一棵以校长为根的树,父节点就是子节点的直接上司. 每个职员有一个快乐指数,用整数 HiHi 给出,其中 1≤i≤N1≤i≤N. 现在要召开一场周年 ...