打包完成后的 Spring Boot 程序如何部署到 Linux 上的服务?

 


你可以参考官方的有关部署 Spring Boot 为 Linux 服务的文档。

文档链接如下:

https://docs.ossez.com/spring-boot-docs/docs/reference/html/deployment.html

请注意,在部署为 systemd 服务的时候,上面的配置文件为:

[Unit]
Description=myapp
After=syslog.target

[Service]
User=myapp
ExecStart=/var/myapp/myapp.jar
SuccessExitStatus=143

[Install]
WantedBy=multi-user.target

你需要自行修改 Description, user,  ExeStart 字段中的内容。

请注意,官方的配置可能不是非常正确。

假设我们的可执行 Jar 文件名为:reoc-mls-service-importer.jar

这个文件部署在:/home/reoc/reoc-mls-service-importer/reoc-mls-service-importer.jar 路径下。

如果你配置 ExecStart 为:

ExecStart = /home/reoc/reoc-mls-service-importer/reoc-mls-service-importer.jar

你是没有办法运行的。

你需要配置为:

ExecStart=/usr/bin/java -Xmx2048m -jar /home/reoc/reoc-mls-service-importer/reoc-mls-service-importer.jar

才可以。

其中 -Xmx2048m 是为这个进程指定分配的内存大小。

你也可以不分配内存,去掉这个参数也是可以的。

https://blog.ossez.com/archives/3124