在aws中部署nodejs和mongoose app

时间:2015-01-03 16:36:47

标签: linux amazon-web-services amazon-ec2

我是aws的新手,最近我已经能够将node,mongod和FTPed项目文件安装到服务器上。

对于mongodb, 我在一个单独的终端选项卡中执行mongo并在另一个选项卡中启动服务。我想知道如何让mongo服务继续运行。

对于节点应用, 现在我在服务器上做节点应用程序。我怎么能保持活着?

现在问题是,我用publicip:portno打开浏览器但没有任何反应。如何找到应用并在浏览器中运行它。

我的app结构是

/
node
mongo
server.js and app related files

4 个答案:

答案 0 :(得分:0)

我认为这更像是一个Linux / Unix命令行问题。您可以使用名为forever的节点模块轻松地在后台运行Node.js进程。

npm install -g forever
forever start YourScript.js

你可以放置一个&在mongod命令的末尾将它放在后台。

答案 1 :(得分:0)

使用Linux / Unix nohup命令可以启动命令,忽略与控制终端进程终止相关的信号(SIGHUP)。将&添加到该命令允许该命令在后台运行并将输出发送到/dev/null将确保您的磁盘不会填满不必要的日志输出。以下是一些应该有效的命令:

nohup mongod >/dev/null &
node server.js >/dev/null &

答案 2 :(得分:0)

确保在您的节点应用中使用命令app.listen("port number");

这是"端口号"您应该在浏览器中使用来自AWS实例的弹性IP呈现页面。确保将弹性IP配置为接受入站请求。

答案 3 :(得分:0)

要让服务/应用在后台运行,您可以运行setTime()命令,然后启动您的应用/服务(例如screenmongod)。在您的应用运行的同一终端中按node app.js,您应该看到

  

(独立)

打印在屏幕上。

这应该让您的应用/服务在后台运行。