首页 > 解决方案 > 尽管 pm2 工作,但 EC2 实例在与 Cloud 9 断开连接时关闭

问题描述

我在 EC2 实例(Ubuntu)上有一个网站(Nodejs),可以通过 pm2 进程访问和运行

问题是 - 关闭 IDE(云 9)后,网站在一段时间后停止工作,一旦我重新登录到“云 9”,在 EC2 实例重新启动后,pm2 就会自动启动。pm2 设置似乎以这种方式工作正常。(我确实运行了 pm2 启动,pm2 保存

从日志:

*PM2 日志:应用程序 [app:0] 通过信号 [SIGINT] 以代码 [1] 退出

PM2 错误:错误:杀死 EPERM*

https://aws.amazon.com/cloud9/faqs/ AWS Cloud9 EC2 环境中所述 - 使您能够启动 Cloud9 连接到的新 Amazon EC2 实例。默认情况下,这些实例会在您关闭 IDE 30 分钟后停止,并在您打开 IDE 时自动启动。

这是否意味着在 PROD 中我们只能执行 SSH,因此实例不会停止并且网站保持活动状态?或者我如何确保实例没有停止?

标签: node.jsamazon-web-servicesamazon-ec2pm2

解决方案


您在位于底层 EC2 上的 Cloud9 机器上开发网站。它们在 30 分钟后关闭,因为它们不适用于网站托管。

您应该通过 CloudFormation 使用 UserData 脚本设置 EC2 来托管站点。

或者使用您最喜欢的编程语言使用 CLI 或 SDK 来启动它。

或者,如果您不想学习 AWS,您可能想研究 Elastic Beanstalk。

如果您想托管无法在 Cloud9 机器上完成的站点,请部署到 EC2 或考虑使用 Beanstalk。


推荐阅读