2017-03-23 9 views
0

サーバー側でレンダリングされたReactアプリケーションをNode Elastic Beanstalk環境にデプロイすると、Nginxがプロセス中に接続できない502エラーが表示されますWebpackビルドを実行しています。WebpackビルドをElastic Beanstalkに展開するときに502エラーを回避できます

"prestart": "node node_modules/webpack/bin/webpack.js --progress --colors --bail" 

と私はビルドが完了したら、サーバーを起動するには、次を実行します。私は、デプロイ時にElastic Beanstalkでによってトリガーされたビルドを行うには、次の実行package.jsonで

"start": "node dist/server.js" 

サイト間に502エラーが表示されています。私はいくつかの可能性のある選択肢を持っていますが、誰かがこれを別の方法で解決したかどうかを知りたいと思っています。

  1. AWS CodeBuildの代わりに、NPMスクリプト
  2. 実行複数のインスタンスを使用してサイトを構築し、ロールアウトは
  3. を実行し、複数の環境とのスワップURLを展開します。

答えて

1

2番目のオプションは、おそらく最も簡単です。 EB構成を「単一インスタンス」から「ロードバランシング、自動スケーリング」に変更し、自動スケーリングルールを2つ以上のサーバーに設定すると、自由に望ましい展開動作が得られます。 EBは、ロードバランサに展開する前にそのインスタンスをロードバランサから取り出し、サイトが使用できないことを保証します。

青/緑の配置とも呼ばれる第3のオプションは、より強力です(前のバージョンは簡単なロールバックのためそのまま残します)が、あなたの状況には過剰な可能性があります。

関連する問題