📌  相关文章
📜  将 springboot 作为服务运行 linux - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:39:13.489000             🧑  作者: Mango

将 Spring Boot 作为服务运行 Linux

很多时候,我们需要将 Spring Boot 应用作为服务运行在 Linux 系统上。这样可以方便地管理和监控应用的运行状态,并且使应用在系统启动后自动启动。

本文将介绍如何在 Linux 系统上将 Spring Boot 应用作为服务运行,并提供了 Shell/Bash 脚本示例。

准备工作

在进行下面的步骤之前,必须先将 Spring Boot 应用打包成可运行的 jar 文件。如果你还没有完成这一步,请参考 Spring Boot 官方文档

创建服务脚本

在 Linux 系统中,我们可以通过 systemd 来管理服务。因此,我们需要创建一个名为 app.service 的服务脚本,并将其放置在 /etc/systemd/system 目录下。

以下是一个示例服务脚本:

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

[Service]
User=root
ExecStart=/usr/bin/java -jar /path/to/your/app.jar
SuccessExitStatus=143
Restart=always

[Install]
WantedBy=multi-user.target

上面的脚本中,Description 是服务的描述信息,User 是服务的运行用户,ExecStart 是启动服务的命令,SuccessExitStatus 是表示服务成功退出状态,Restart 表示服务退出后会自动重启。

载入服务

在创建服务脚本之后,我们需要通过以下命令来载入服务:

sudo systemctl daemon-reload
sudo systemctl enable app.service
sudo systemctl start app.service

sudo systemctl daemon-reload 命令用于重新载入 systemd 配置,sudo systemctl enable app.service 命令将服务设置为启动时自动启动,sudo systemctl start app.service 命令用于启动服务。

查看服务状态

使用以下命令可以查看服务的状态:

sudo systemctl status app.service
停止服务

使用以下命令可以停止服务:

sudo systemctl stop app.service
删除服务

使用以下命令可以删除服务:

sudo systemctl disable app.service
sudo rm /etc/systemd/system/app.service
sudo systemctl daemon-reload
总结

通过 systemd ,我们可以方便地将 Spring Boot 应用作为服务运行在 Linux 系统中。以上就是完成这个过程的步骤以及相关命令的说明,希望对你有所帮助。