【问题标题】:how to setup nodejs webapp as service?如何将nodejs webapp设置为服务?
【发布时间】:2011-04-12 15:39:59
【问题描述】:
我已经安装了 nodejs、npm、模块和我的应用程序代码。在我的开发机器上,我只需在我的应用文件夹中输入node app.js 即可启动开发服务器,但现在是时候将它部署到我遇到问题的真实服务器了。
- 放置我的应用代码的常规文件夹在哪里。
- 应该使用哪个用户来运行我的 nodejs 应用程序。以及如何让用户只有执行app代码的权限,以及80、443、843端口。
- 如何编写服务脚本,通过kill pid停止服务器?
【问题讨论】:
标签:
linux
deployment
node.js
【解决方案1】:
端口由您的应用侦听的端口决定。如果您可以通过 ssh 物理访问服务器并具有 root 权限等,那么您可以将其视为开发服务器。
我会推荐forever 以保持其运行,并可能编写一个平衡器来一次处理多个节点应用程序。
权限处理必须基于连接性。用户连接到您的服务,您对其权限级别进行身份验证。这是手工完成的。
你放置的文件夹不是很相关。
如果你有一个 no.de 服务器,你可以学习如何使用他们的智能机器。 Amazon EC2 有类似的指南。
【解决方案2】:
我推荐 Monit with Upstart。您可以阅读该解决方案 here 和 here。你也可以在 nginx 中做一个简单的负载均衡器。