Linux上后台运行node和springboot服务

环境:Ubuntu18.04 阿里云云服务器

尝试全局安装forever和pm2均失败,最后以linux自带的nohub启动,以前同样用nohub启动springboot

命令:

nohup npm start > myLog.log 2>&1 &

说明:npm start为配置的脚本命令,一般直接启动用 node app.js,但是我的express小项目这样启动不完全

遇见问题:启动项目成功后关闭xshell后发现仍然无法访问,原来是阿里云的云服务器本身问题,需要以exit命令正常退出才不会杀掉刚启动的进程

 后台运行spring boot项目命令为:

nohup java -jar 自己的springboot项目.jar >日志文件名.log 2>&1 &

命令详解:

nohup:不挂断地运行命令,退出帐户之后继续运行相应的进程。

>日志文件名.log:是nohup把command的输出重定向到当前目录的指定的“日志文件名.log”文件中,即输出内容不打印到屏幕上,而是输出到”日志文件名.log”文件中。不指定文件名会在当前目录创建nohup.out,如果当前目录的 nohup.out 文件不可写,输出重定向到 $HOME/nohup.out 文件中。如果没有文件能创建或打开以用于追加,那么 Command 参数指定的命令不可调用。

2>&1:2就是标准错误,1是标准输出,该命令相当于把标准错误重定向到标准输出么。这里&相当于标准错误等效于标准输出,即把标准错误和标准输出同时输出到指定的“日志文件名.log”文件中。

java -jar 自己的springboot项目.jar:执行springboot的项目,如果单单只执行该命令,linux只会短暂的运行该项目,当退出控制台后会自动关闭该项目。

最后的&:让改作业在后台运行。

然后项目启动后查看启动日志看是否正常

cat myLog.log

参考博客:

阳光小白nodejs 在linux上后台运行

TLScott阿里云使用nohup来后台运行node.js服务在关掉putty后退出的解决方法

于先森啊springboot 在linux后台运行

原文地址:https://www.cnblogs.com/jixiaohua/p/11317129.html