尽管 pm2 工作正常,但在与 Cloud 9 断开连接时 EC2 实例关闭

EC2 instance shuts down when disconnected from Cloud 9 despite pm2 working

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

问题是 - 关闭 IDE (cloud 9) 网站在一段时间后停止工作,只要我重新登录到“Cloud 9”,pm2 就会在 EC2 实例重启后自动启动。 pm2 安装程序似乎可以正常工作。 (我做了运行 pm2启动,pm2保存

来自日志:

*PM2 日志:应用程序 [app:0] 通过信号 [SIGINT]

以代码 [1] 退出

PM2 错误:错误:kill EPERM*

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

时自动启动

这是否意味着在 PROD 中我们只能执行 SSH,这样实例就不会停止并且网站仍然有效? 或者我如何确保实例不会停止?

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

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

或使用 CLI 或 使用您最喜欢的编程语言的 SDK。

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

如果您想托管站点,则无法在 Cloud9 计算机上执行此操作,请部署到 EC2 或考虑使用 Beanstalk。

首先找到对应的EC2实例,开启终止保护:

其次,在Cloud9中,cloud9 > Project Settings > EC2 instance 并将 Stop my environment 设置为 Never