如何在Ubuntu服务器上运行我的Node.js应用程序的'service'

9
我不知道在Ubuntu Server上应该如何称呼它,但在大多数时候,当我在Windows上工作时,它被称为后台运行应用程序的服务。
我的Web服务器是基于Node.js构建的,因此,为了在Ubuntu服务器上部署它,我需要一个可以运行Node.js的“服务”,我希望这个“服务”:
1. 在后台运行 2. 具备自动启动Node.js的能力,以防万一我的Web服务器崩溃
通常,我通过打开终端并运行js文件来运行Node.js应用程序。但据我所知,这更多地是用于测试目的,因为无法保证终端会在失败后启动Node.js。

5
您需要使用“forever”。使用“npm install -g forever”进行安装。然后,您将进入您的Node应用程序目录并运行“forever start app.js”。 - Stan Cromlish
3
请查看http://labs.telasocial.com/nodejs-forever-daemon/。 - robertklep
1个回答

21

许多人使用foreverhttps://github.com/nodejitsu/forever,这已经成为行业标准。

如果您使用Ubuntu,您也可以使用init脚本(谷歌“ubuntu upstart”),它们将完成几乎相同的工作,并且可以保证在服务器重新启动时运行。

以下是我编写的upstart脚本示例https://gist.github.com/qbert65536/5271721

该脚本将在服务器启动时运行,您还可以使用以下命令控制它们:

启动myapp,停止myapp,重新启动myapp,其中myapp.conf是upstart脚本的名称。


感谢提供示例upstart脚本 - 我一直认为编写upstart脚本很麻烦,从未想过要深入了解它! - RobM

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接