springboot jar -jar centos后台运行的几种方式

在CentOS系统中,如果你想要在后台运行一个Spring Boot应用程序,你可以使用`nohup`命令或者使用`screen`会话。以下是两种常用的方法:

  1. **使用nohup命令**:

`nohup`命令可以使进程在你退出SSH会话后继续运行。它还会把标准输出和标准错误重定向到一个文件中。

```bash

nohup java -jar your-application.jar > output.log 2>&1 &

```

这里,`your-application.jar`是你的Spring Boot应用程序的jar文件。`>`将标准输出重定向到`output.log`文件,`2>&1`将标准错误也重定向到标准输出,`&`将进程放到后台执行。

  1. **使用screen命令**:

`screen`是一个多终端界面的程序,允许你在服务器上启动一个会话,即使退出SSH连接,会话中的进程也会继续运行。

首先,你需要安装`screen`(如果尚未安装):

```bash

sudo yum install screen

```

然后,启动一个新的screen会话:

```bash

screen -S spring_app_session

```

在会话中运行你的Spring Boot应用程序:

```bash

java -jar your-application.jar

```

然后,你可以按`Ctrl+A`然后按`D`来分离screen会话,这样程序就会在后台继续运行。当你想重新连接到会话时,可以使用:

```bash

screen -r spring_app_session

```

  1. **使用systemd服务**:

另一种更稳定的方法,是使用`systemd`服务来管理你的Spring Boot应用程序。这需要创建一个服务文件,例如`your-app.service`,并将其放在`/etc/systemd/system/`目录下。

服务文件示例:

```ini

Unit

Description=Spring Boot App

After=network.target

Service

User=appuser

Group=appgroup

WorkingDirectory=/path/to/your/application

ExecStart=/usr/bin/java -jar your-application.jar

Restart=always

Install

WantedBy=multi-user.target

```

然后,你可以使用以下命令来启动、停止、重新加载或查看服务的状态:

```bash

sudo systemctl start your-app.service

sudo systemctl stop your-app.service

sudo systemctl restart your-app.service

sudo systemctl status your-app.service

```

使用`systemd`服务是生产环境中推荐的方法,因为它提供了更好的进程管理、日志记录和自动重启功能。

相关推荐
biubiubiu07068 小时前
SpringBoot关于外部化配置
java·spring boot·spring
zzz_23688 小时前
【Spring】面试突击系列(二):SpringBoot 入门与自动配置原理
java·spring boot·spring
摇滚侠13 小时前
JavaWeb 全套教程 Servlet 66-74
java·servlet·tomcat·intellij-idea·jar
何中应14 小时前
Nexus如何上传JAR包
java·maven·jar
我登哥MVP15 小时前
Spring Boot 从“会用”到“精通”:参数解析原理
java·spring boot·后端·spring·servlet·maven·intellij-idea
小江的记录本16 小时前
【Spring全家桶】Spring Cloud 2023.0.x:微服务核心理论、CAP/BASE定理(附《思维导图》+《面试高频考点清单》)
java·spring boot·后端·spring·spring cloud·微服务·面试
唔6616 小时前
(二)补充完整的数据库、中间件、MQTT、JAR后台和Web前端的部署脚本,全部一键自动化。
数据库·中间件·jar
我登哥MVP16 小时前
Spring Boot 从“会用”到“精通”:Model-Map原理
java·spring boot·后端·spring·servlet·maven·mybatis
鱼鳞_17 小时前
苍穹外卖-Day12(数据统计)
java·spring boot
心之伊始17 小时前
Java 后端 AI 应用网关实战:多模型路由、Fallback、超时和可观测性设计
java·spring boot·大模型·架构设计·ai网关