AWS ラムダは、システムへの Linux バイナリのインストールをサポートしていません。システムに実行可能ファイルを含める必要があります。これは、静的実行可能ファイルを既に提供しているffmpegなどの実行可能ファイルにとっては簡単です。
を使用してコンパイルされたノード バイナリ アドオンでは、これはどのように機能しますnode-gyp
か? build/
Linux環境からディレクトリを含めるだけで機能しますか?
誰もこれをまだ理解していませんか?
AWS ラムダは、システムへの Linux バイナリのインストールをサポートしていません。システムに実行可能ファイルを含める必要があります。これは、静的実行可能ファイルを既に提供しているffmpegなどの実行可能ファイルにとっては簡単です。
を使用してコンパイルされたノード バイナリ アドオンでは、これはどのように機能しますnode-gyp
か? build/
Linux環境からディレクトリを含めるだけで機能しますか?
誰もこれをまだ理解していませんか?
私たちの場合、それは を使用して構築された node-dv モジュールnode-gyp
でした。次の手順で機能します。
新しい EC2 インスタンスを生成します。AWS Lambda ランタイムとまったく同じイメージに基づいていることを確認してください。Lambda 環境の詳細は、http: //docs.aws.amazon.com/lambda/latest/dg/current-supported-versions.htmlで確認できます。私たちの場合、それはamzn-ami-hvm-2015.03.0.x86_64-gp2と呼ばれる Amazon Linux AMI でした。
nvm
AWS Lambda と同じバージョンの Node.js をインストールして使用します。これを書いている時点ではv0.10.36 でした。http://docs.aws.amazon.com/lambda/latest/dg/current-supported-versions.htmlをもう一度参照して確認してください。
おそらく、EC2 に git & g++ コンパイラをインストールする必要があります。これを実行できます
sudo yum install git gcc-c++
最後に、アプリを新しい EC2 に複製し、アプリの依存関係をインストールします。
nvm use 0.10.36
npm install --production