一、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. Kubernetes实战总结 - 自定义Prometheus

    一.概述 首先Prometheus整体监控结构略微复杂,一个个部署并不简单.另外监控Kubernetes就需要访问内部数据,必定需要进行认证.鉴权.准入控制, 那么这一整套下来将变得难上加难,而且还需 ...

  2. Jmeter 常用函数(31)- 详解 __iterationNum

    如果你想查看更多 Jmeter 常用函数可以在这篇文章找找哦 https://www.cnblogs.com/poloyy/p/13291704.html 作用 获取当前线程的循环次数,跟线程组属性挂 ...

  3. python基础 Day10

    python Day10 函数的参数升级版 形参角度 万能参数*arg #在函数定义时,*代表聚合.他将所有的位置参数聚合成一个元组,赋值给了args def test(*args): print(& ...

  4. python基础 Day3

    python Day3 1.作业回顾 设定一个理想的数字比如88,让用户输入数字,如果比88大,则显示猜测的结果大:如果比66小,则显示猜测的结果小了,给用户三次猜测机会,如果显示猜测正确退出循环,如 ...

  5. SparkStreaming-DStream(Discretized Stream)

    DStream(Discretized Stream)离散流 ◆ 和Spark基于RDD的概念很相似,Spark Streaming使用离散流 (discretized stream)作为抽象表示,叫 ...

  6. muduo源码解析2-AtomicIntegerT类

    AtomicIntegerT template<typename T> class atomicTntergerT:public noncopyable { }; 作用: 与std::ao ...

  7. 使用ClickHouse表函数将MySQL数据导入到ClickHouse

    #clickhouse-client :create database dw; :use dw; --导入数据: CREATE TABLE Orders ENGINE = MergeTree ORDE ...

  8. 你还在用a标签吗?——用button替代a

    前言:a标签,不止你在用,我也在用.但某些时候我们可以考虑用button替代a. 在多页应用中,a标签很常见,我们常用来作为一个普通超链接,进行页面跳转. 而在单页应用中,我们使用路由进行页面切换,a ...

  9. 每日一学-python calendar

    python模块之calendar方法详细介绍 1.首先我们看下calendar的内置函数和相关的属性: import calendar dir(calendar) ['Calendar', 'EPO ...

  10. cmd 和powershell 用git 显示乱码

    错误: 解决: 只需在环境变量中加入 LESSCHARSET=utf-8