2017-04-05 3 views
0

私はElasticbeanstalkでAWSオートスケーリングを使用しています。オートスケーリング中にnpmからノードモジュールが削除されました。これをどう扱う?

私が言及したモジュールのインストールを開始&オートスケールトリガは新しいインスタンスを開始すると、それはS3からアプリをダウンロードしますS3 &で私のノードアプリがpackage.jsonにセットアップ時に必要なすべてのモジュールがインストールされるように言及しているに

をアップロードしましたin package.json

この間、一部のモジュールが既に&のnpmから削除されていた場合、私のpackage.jsonがそれらを参照していましたか?その場合、私のインスタンスが正しく起動しません&私のオートスケールの目的は無効になります。

各オートスケール中に、ノードモジュールがすでにアプリケーションで使用可能になっていることを確認するにはどうすればよいですか?

すべてのモジュールがグローバルにインストールされているカスタムAMIを作成することを考えました。したがって、私のアプリはオートスケール中に直接参照することができます。しかし、更新中に追加のモジュールを使用した場合、既存のインスタンスはどのようにアプリケーションをデプロイする際にそれらをインストールしますか?

アプリの新バージョンをリリースする際にあなたの依存関係をインストールする必要があり、このシナリオ

答えて

1

を処理するためのより良い方法を提案してください。つまり、自動拡張がNPMに依存しないように、アプリケーションに依存関係をS3にインストールする必要があります。

ElasticBeanstalkがこれをサポートしているかどうかは分かりませんが、ソースバンドルのnode_modulesサブディレクトリに依存関係を置くだけで、アプリケーションがローカルで利用できるようになり、autoscalesの場合はインストールする必要はありません。

+0

私もそうだと思っていました...すべてのパッケージは約50MBなので、デプロイメント時間はautoscale config is not ...で考慮する必要があります。 – Lajpat

関連する問題