我有一个运行在Amazon EC2服务器上的简单meteor应用程序。一切都很好。我通过meteor项目目录中的用户手动启动它。
meteor
但是,我想要这个应用程序
我尝试通过运行它nohup meteor&,但是当我尝试注销EC2实例时,出现“您有正在运行的作业”消息。继续注销将停止该应用程序。
nohup meteor&
如何使应用程序在启动时启动并保持运行状态(除非由于某种原因而崩溃)?
永久安装并使用启动脚本。
$ npm install -g forever
我有几个用于管理生产环境的脚本-启动脚本如下所示:
#!/bin/bash forever stopall export MAIL_URL=... export MONGO_URL=... export MONGO_OPLOG_URL=... export PORT=3000 export ROOT_URL=... forever start /home/ubuntu/apps/myapp/bundle/main.js exit 0
方便地,它还将追加到日志文件中~/.forever,该文件将显示运行应用程序时遇到的任何错误。您可以通过以下方式获取日志文件的位置以及有关您应用的其他统计信息:
~/.forever
$ forever list
为了使您的应用程序在启动时启动,您需要做一些适合您的linux风格的事情。您可能只需将启动脚本放入中/etc/rc.local。
/etc/rc.local
另外请注意,你 真的应该,如果在生产中使用它可以捆绑你的应用程序。