将 Node.js 应用程序部署到弹性 beanstalk

Posted

技术标签:

【中文标题】将 Node.js 应用程序部署到弹性 beanstalk【英文标题】:Deploying Node.js app to elastic beanstalk 【发布时间】:2014-12-29 03:11:54 【问题描述】:

当我将 Node.JS 应用程序部署到 Elastic beanstalk 时,我得到的唯一结果是 nginx 502 错误网关。该应用程序在本地运行良好。我阅读了教程 (http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/create_deploy_nodejs_express.html),但它并没有解决我的任何问题。什么会导致 502 错误网关和/或如何解决此问题?谢谢!

【问题讨论】:

502 表示 nginx 无法与 Nodejs 对话。我猜Nodejs在启动时遇到了问题。日志说什么?你能把它们贴在这里吗?您可以拖尾最后 100 行,这应该会给您一个很好的指示:docs.aws.amazon.com/elasticbeanstalk/latest/dg/… 【参考方案1】:

确保您没有对端口号进行硬编码。

// BAD
server.listen(1704, function()  ... )

// GOOD
server.listen(process.env.PORT || 1704, function()  ... )

【讨论】:

以上是关于将 Node.js 应用程序部署到弹性 beanstalk的主要内容,如果未能解决你的问题,请参考以下文章

使用弹性 beantalk 部署复杂的 node.js 项目

从弹性beantalk上的docker-compose部署查看node.js日志(console.log)

Node.js AWS 部署错误:找不到模块

将 Node js 服务器(在弹性 beanstalk AWS 上)url 更改为 HTTPS

使用带有弹性 beanstalk、nginx 和 node.js 的 websocket 出现问题

将 node.js 应用程序部署到 heroku 时出错