Linux环境中,通过systemd服务将Spring Boot Jar包设置为开机自启动

这篇具有很好参考价值的文章主要介绍了Linux环境中,通过systemd服务将Spring Boot Jar包设置为开机自启动。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1、进入/etc/systemd/system目录,并创建一个名为spring-boot-app.service的新服务文件。

sudo vi /etc/systemd/system/spring-boot-app.service

2、将下面的配置内容复制到 spring-boot-app.service 文件中,并保存。

[Unit]
Description=My Spring Boot App
After=syslog.target

[Service]
User=username
ExecStart=/usr/bin/java -jar /path/to/spring-boot-app.jar
SuccessExitStatus=143

[Install]
WantedBy=multi-user.target

其中,username是你要用来运行Spring Boot应用程序的用户名,/path/to/spring-boot-app.jar是你的Spring Boot应用程序的路径。

3、重新加载所有系统服务配置。

sudo systemctl daemon-reload

4、启动服务并将其设置为开机启动。

sudo systemctl enable spring-boot-app.service
sudo systemctl start spring-boot-app.service

 5、相关命令

启动服务

sudo systemctl start spring-boot-app.service

停止服务

sudo systemctl stop spring-boot-app.service

重启服务

sudo systemctl restart spring-boot-app.service

检查服务状态

sudo systemctl status spring-boot-app.service

6、相关解释

systemd service文件包含以下三个部分:

  1. [Unit]:在这个部分中,描述Service的信息,如名称、描述和启动顺序。其中,“Description”是可选的,一般用于描述服务的作用,可以为空。而"After"指定了该服务应该在哪一个其他task之后启动,本例中就是在syslog.target task加载之后执行。

  2. [Service]:这部分定义了运行systemd服务时需要的详细信息。例如“User”字段指定了以哪个用户身份来启动服务,“ExecStart”表示服务“主程序”的命令,在这里我们指定Java进行系统命令启动,并通过给出Spring-Boot JAR的路径和文件名来提供启动信息。

    SuccessExitStatus=143 指定如果服务停止,使其在退出之前向系统报告成功(而不是失败)。143是kill命令发送给进程时的SIGTERM信号的减去128的值。

  3. [Install]:这个部分决定了在哪个级别下启动这个服务,WantedBy=multi-user.target表明这个服务会在Linux多用户模式下启动。

如此设置的Systemd 服务,它将会使用指定的用户运行一个jar文件,以确定Jar文件为最重要的服务组件(除了Java本身),并仅在系统已经准备好之后才启动。文章来源地址https://www.toymoban.com/news/detail-455769.html

到了这里,关于Linux环境中,通过systemd服务将Spring Boot Jar包设置为开机自启动的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 通过内网穿透快速搭建公网可访问的Spring Boot接口调试环境

    🔥 博客主页 : 小羊失眠啦 🔖 系列专栏 : C语言 、 Cpolar 、 Linux ❤️ 感谢大家点赞👍收藏⭐评论✍️ 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。 前后端分离项目中,在调用接口调试时候,我们可以通过

    2024年02月08日
    浏览(49)
  • 【JAVA EE】Spring Boot中maven环境的搭建和设置

    Sping Boot是Spring推出的框架,是Spring家族的一个子项目,其设计初衷是为了简化Spring配置,从而让用户可以轻松构建独立运行的程序,并极大提高工作效率。 本系列将学习Spring Boot的相关原理和简单开发。 在Spring Boot框架出现以前,java EE开发常用的框架是Spring,该框架开始于

    2024年02月06日
    浏览(53)
  • linux下通过systemd配置开机自启

    1.创建对应服务的启动脚本,放在/etc/systemd/system,名字为服务名.service 2.赋予权限 chmod 777 自启脚本绝对路径 3.重新加载systemd配置 systemctl daemon-reload 4.使用以下命令启用Kafka服务,使其在系统启动时自动运行: systemctl enable kafka 5.使用以下命令启动Kafka服务: systemctl start kafka

    2024年02月10日
    浏览(40)
  • 【Linux】使用systemd设置开机自启动命令

    systemd是Linux系统中现代化的初始化系统,可以使用它来实现开机自动运行命令。在systemd中,可以通过创建一个service文件,把要执行的命令放在其中,然后将其添加到systemd的自启动项中。 具体操作步骤如下: 首先在终端中使用sudo权限创建一个.service文件,用于存储service配置

    2024年02月08日
    浏览(76)
  • 将Linux init进程设置为systemd

    在Linux操作系统中,init进程是系统启动的第一个进程。然而,随着系统的发展,新的init进程systemd已经逐渐取代了旧的init进程。如果想要将Linux init进程设置为systemd,可以按照以下步骤操作: 首先,需要检查当前系统是否已经安装了systemd。可以通过以下命令进行检查: 如果

    2024年02月15日
    浏览(50)
  • 如何通过内网穿透实现外部网络对Spring Boot服务端接口的HTTP监听和调试?

    前后端分离项目中,在调用接口调试时候,我们可以通过cpolar内网穿透将本地服务端接口模拟公共网络环境远程调用调试,本次教程我们以Java服务端接口为例。 JDK1.8 IDEA SpringBoot Maven Tomcat9.0 Postman 搭建一个springboot服务的项目,编写一个接口,为了更好直观看到,这里创建一个p

    2024年02月10日
    浏览(53)
  • idea设置自动编译spring boot代码,idea代码修改后无须重启服务立即生效

    系统环境:windows 10 idea版本:IntelliJ IDEA 2022.2.3 (Ultimate Edition) springBoot版本:2.2.6.RELEASE 在Spring Boot开发应用程序时,需经常要进行频繁的代码修改和调试。 为了更好的提高开发效率,希望能够自动编译和热更新应用程序,以便我们在修改代码后无需手动多次进行重新启动应用

    2024年04月13日
    浏览(31)
  • 【Linux | systemd】systemd(systemctl命令)运行服务的配置文件详解

    【systemctl】让程序以守护进程的方式在后台运行 首先需要创建一个systemd unit 配置文件,比如:verdaccio.service,一般放在 /lib/systemd/system/ 下 添加配置如下: 开机自启动:systemctl enable verdaccio.service 立即启动:systemctl start verdaccio.service 重新启动:systemctl restart verdaccio.service 运

    2024年01月17日
    浏览(46)
  • Ubuntu开机自启服务systemd.service配置教程(Ubuntu服务)(Linux服务)upstart(systemd教程)

    我们在linux系统下启动一个程序,一般用一条命令,或者执行一个脚本就行了,那么,为什么还要将程序配置成服务?这样做有什么好处? 1. 自动启动 配置成服务后,程序将在系统启动时自动启动,无需手动操作。这样可以确保程序在系统重启后能够自动运行,避免因为人为

    2024年02月05日
    浏览(48)
  • 更新spring boot jar包中的BOOT-INF/lib目录下的jar包

    更新spring-boot jar包中的BOOT-INF/lib目录下的jar包 场景 需要更新lib目录下某个jar包的配置文件 失败的解决方法 用解压软件依次打开spring-boot jar包(设为a.jar)、BOOT-INF/lib目录下的jar包(设为b.jar),然后修改配置文件后保存回a.jar包中,这样操作在通过java -jar运行a.jar包时会导致

    2024年02月13日
    浏览(36)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包