JAVA SpringBoot jar 程序 Systemctl 生产环境部署

在Linux系统中使用systemctl来管理和自动启动一个Spring Boot应用程序,需要将Spring Boot应用程序打包成一个可执行的JAR文件,并创建一个systemd服务单元文件。

以下是一个简单的步骤指南和示例服务文件:

  1. 确保Spring Boot应用程序已经打包成了一个可执行的JAR文件。
  2. 创建一个新的服务单元文件 /etc/systemd/system/yourapp.service,内容如下:
bash 复制代码
[Unit]
Description=Your Spring Boot Application
After=syslog.target
 
[Service]
User=ubuntu
ExecStart=/usr/bin/java -jar /path/to/your-application.jar
SuccessExitStatus=143
 
[Install]
WantedBy=multi-user.target

确保修改User为运行应用程序的用户,ExecStart为JAR文件的完整路径。

  1. 重新加载systemd管理器配置,使新的服务单元生效:
bash 复制代码
sudo systemctl daemon-reload
  1. 启动应用程序服务:
bash 复制代码
sudo systemctl start yourapp.service
  1. 设置应用程序服务开机自启:
bash 复制代码
sudo systemctl enable yourapp.service

确保Spring Boot应用程序有适当的日志配置,以便systemd能够正确地记录输出和错误信息。如果应用程序需要额外的配置,可以通过环境变量或者命令行参数来传递。

相关推荐
Java_2017_csdn14 分钟前
在 Java 中,MessageFormat.format() 和 String.format() 函数对比?
java·开发语言·前端·数据库
噢,我明白了25 分钟前
MyBatis-Plus 中IPage的分页查询
java·mybatis
剑挑星河月29 分钟前
98.验证二叉搜索树
java·算法·leetcode
我登哥MVP39 分钟前
Spring Boot 从“会用”到“精通”:请求映射原理
java·spring boot·后端·spring·servlet·maven·intellij-idea
杨运交40 分钟前
[028][缓存模块]命名缓存:多级个性化缓存配置的设计与实现
spring boot
阿文的代码库1 小时前
干货分享|C++运算符重载知识点
java·c++·算法
码不停蹄的玄黓1 小时前
Java 实现阻塞队列
java·开发语言
SunnyDays10111 小时前
Java 实现 PDF 转 PDF/A 和 PDF/A 转 PDF(超详细教程)
java·开发语言·pdf
muddjsv1 小时前
Java语言学习路线全解析:从入门到精通的核心模块与进阶路径
java
未若君雅裁1 小时前
线程池核心参数与执行流程
java·开发语言