Serverless Frameworkを使用してAWS Lambdaでノードモジュールをロードする際に問題が発生しました。私のノードパッケージの1つはネイティブライブラリを使用するので、EC2を使ってnode_moduleフォルダを作成し、それを私のServerlessプロジェクトにコピーしました。 (:.nodeファイルのファイルに関するELF file's phentsize not the expected size
特異的に)Serverless NodeJS /ネイティブのノードモジュール
私はexcludeDevDependencies: false
を追加しようとした私は、手動でプロジェクトを圧縮し、AWSラムダにアップロードする場合はすべてが動作しますが、私は指定されたアーティファクトなしserverless deploy
を使用している場合、私はモジュールに関するエラーが出ます展開が大きくなりますが、それでもエラーが表示されます。現在のところ、プロジェクトフォルダの内容を圧縮し、アップロードするアーティファクトとしてそのファイルを指定した場合にのみ機能します。ネイティブ・バインディングを持つノード・モジュールをServerlessでデプロイする別の方法はありますか?
アップデート:serverless package
を使用してパッケージ化し、展開したzipファイルserverlessを調べると、パッケージ化されたバージョンでは、.oファイルと.aファイルのファイルサイズが異なります元の。これは正常ですか?
ネイティブライブラリは.soですか? –
私は問題はライブラリそのものとは思えませんが、手作業でコピーすると 'serverless deploy'が動作するようになっています。 – arvinkx
私もこれを見ています。ノードモジュール内のイメージファイルでテストすると、 'serverless package'が続いて解凍されると、開くことができないイメージが生成されますが、zipやunzippingは期待どおりに動作します。 –