如何在ubuntu上永远运行spring-boot?

时间:2016-06-29 00:38:06

标签: spring maven spring-boot

我尝试在 vm 上运行spring-boot,并且 nginx 代理所有要求它。我有这个工作但我跑的时候:

mvn spring-boot:run

我的ssh会话结束,它将停止spring引导实例。 (按预期

我还尝试将<{1}}配置和sym链接 spring-boot jar 添加到服务中,如下所示:

<executable>

然后符号链接 .jar

<plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
     <configuration>
           <executable>true</executable>
     </configuration>
</plugin>

现在我运行服务时:

sudo ln -s /var/users-java/target/user-0.0.1-SNAPSHOT.jar /etc/init.d/user_service

它将退出:

sudo /etc/init.d/user_service start

但是没有运行实际的服务器?! 26208 PID也不会出现在我的流程中!

有什么想法吗?是否有永久运行spring boot应用程序的替代方法?就像节点中的 永远 工具一样?

2 个答案:

答案 0 :(得分:10)

如果您在ubuntu中运行应用程序,则可以使用nohup和&amp;在后台运行您的过程。这很简单,我希望它能解决你的问题

nohup mvn spring-boot:run &

http://www.cyberciti.biz/tips/nohup-execute-commands-after-you-exit-from-a-shell-prompt.html

答案 1 :(得分:1)

要在您注销后运行命令,您可以使用 nohup 命令。

nohup 代表“ no hangup 。” nohup 是一个POSIX命令,用于忽略挂断信号。按照惯例,挂断信号是终端警告依赖注销过程的方式。

https://en.wikipedia.org/wiki/Nohup

http://linux.101hacks.com/unix/nohup-command/

您的命令看起来有点像

nohup mvn spring-boot:run &