デプロイする前にローカルnode_modulesからaws-sdkを削除するオプション
aws-sdkだけでも巨大なノードモジュール(解凍された20mb以上)であり、そのすべての依存関係とともに、ラムダプラットフォームでのブラウザー内コード編集を防ぐのに十分な重みがあります。
ユーザーはaws-sdkに依存するもの(例: @awspilot/dynamodb
)を使用したい場合がありますが、これはラムダのネイティブaws-sdkモジュールで正常に実行されます。
現在、aws-sdkとその依存関係を手動で削除して、関数package.zipを、私の場合を例として25倍に縮小することができます。
パッケージ化/デプロイする前にこれらの不要なモジュールを削除することは、サーバーレスのオプションでしょうか?
該当なし
ちょっと@davepwsmith開いてくれてありがとう👍
exclude
/ include
ルールを使用して、デプロイパッケージに除外/含める必要があるものを説明するグロブを定義できます(https://serverless.com/framework/docs/providersを参照)。 / aws / guide / packages#exclude--include)。
関連する可能性のある#2709にも取り組んでいます。
FWIW:_今_ aws-sdk
をdevDependency
$として追加するだけで十分です。 その後、自動的に除外されます。AWSLambdaNode.JSランタイムにはaws-sdkが埋め込まれているため、Lambdaは引き続き機能します(私の場合は:))
@ChristianUlbrich共有してくれてありがとう!
aws-sdk
をdevDependency
に移動して9MBのパッケージサイズを削りました🔥
最も参考になるコメント
FWIW:_今_
aws-sdk
をdevDependency
$として追加するだけで十分です。 その後、自動的に除外されます。AWSLambdaNode.JSランタイムにはaws-sdkが埋め込まれているため、Lambdaは引き続き機能します(私の場合は:))