【发布时间】:2019-07-22 11:23:17
【问题描述】:
我正在尝试将我的 express/node 应用程序部署到我的 AWS EC2,尽管我遇到了麻烦。我可以在本地运行它,但是当我 ssh 到 EC2 机器上并运行以下命令时,我看不到它。该应用程序为 UI 提供了一层 REST api。 UI(使用 react)目前在 netlify.com 并已成功部署。
采取的措施
- 将应用程序库克隆到 ec2 机器上
- 从 ec2 机器上的应用程序根目录运行“npm install”
- 导航(使用 SSH 终端)到应用程序的根目录并运行以下命令
命令
pm2 start src/index.js
命令的输出以绿色显示“在线”。 index.js 文件的内容如下 - 非常简单的东西
index.js
const app = require('./app');
const port = 5000;
app.listen(port, () => {
/* eslint-disable no-console */
/* eslint-enable no-console */
});
要查看它在 EC2 上是否有效,我在 SSH 会话中尝试以下操作
curl https://localhost:5000 (have also tried http://localhost:5000)
但命令以
响应curl: (7) Failed to connect to localhost port 5000: Connection refused
问题 - 这是将 express/node 应用程序部署到 AWS 的方式吗?这是我的好时机:-|
【问题讨论】:
-
这是防火墙问题吗? 5000端口开放了吗?
标签: express amazon-ec2