linux-保持流星在Amazon EC2上运行

我有一个运行在Amazon EC2服务器上的简单流星应用程序.一切都很好.我通过项目目录中的流星与用户手动启动它.

但是,我想要这个应用程序

>开机启动
>不受挂断的困扰

我尝试通过nohup流星&运行它,但是当我尝试注销EC2实例时,出现“您有正在运行的作业”消息.继续注销将停止该应用程序.

如何使应用程序在启动时启动并保持运行状态(除非由于某种原因而崩溃)?

解决方法:

安装forever并使用启动脚本.

$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 list

为了使您的应用程序在启动时启动,您需要做一些适合您的linux风格的事情.您可能只是将启动脚本放在/etc/rc.local中.有关Ubuntu的信息,请参见this question.

还要注意,如果在生产环境中使用应用程序,则应将其捆绑在一起.有关差异的更多详细信息,请参见this comparison.

上一篇:解决阿里云redis监听6379,配置规则也将6379端口开放,但是外网仍无法连接6379的问题。


下一篇:tomcat.apache startup.bat闪退两种解决方法