在将我的服务器端呈现的React应用程序部署到Node Elastic Beanstalk环境时,该站点显示502错误,其中Nginx在运行webpack构建的过程中无法建立连接。
在package.json中,我运行以下命令来进行构建,这在部署期间由Elastic Beanstalk触发:
"prestart": "node node_modules/webpack/bin/webpack.js --progress --colors --bail"
并在构建完成后运行以下命令启动服务器:
"start": "node dist/server.js"
在这两者之间,该网站显示502错误。我有一些潜在的选择,但我很想知道是否有人以不同/更简单的方式解决了这个问题。
答案 0 :(得分:1)
您列出的第二个选项可能是最简单的。如果将EB配置从“单实例”更改为“负载平衡,自动扩展”并将自动扩展规则设置为至少具有两个服务器,那么您将免费获得所需的部署行为。 EB会在部署到实例之前将实例从负载均衡器中取出,从而确保您的站点永远不可用。
第三个选项,也称为蓝色/绿色部署,功能更强大(因为它保留了先前版本的完整性以便于回滚),但对于您的情况可能过度。