使用 Lambda Layer 将 node_modules 上传到 Lambda Layer,并使用该库
经过
-
- 同じライブラリを使用しているLambda関数が増えた
-
- コンソール画面からコードを編集できるようにしたい
- 上記の理由から、layerに共通ライブラリを登録し、それを読み込ませることでLambda関数を軽量化する
环境
-
- ローカルOSはWindows10(Macでもで順は同様)
- LambdaはNode.jsを使用
准备node_modules
- 『nodejs』という名前のフォルダを作成する
※名字非常重要。layer只能读取nodejs/node_modules的文件结构(确切地说,它会在opt下生成opyt/nodejs/node_modules,但不必担心)。
如果从头开始准备的话
在创建的文件夹中创建一个名为node_modules的文件夹。
npm install 必要なライブラリ名
② 如果已经存在node_modules文件夹
将node_modules文件夹移动到刚刚创建的nodejs文件夹中。
- nodejsフォルダをzip化する
创建Lambda层
- AWS Lambdaのレイヤーから「レイヤーの作成」をクリック
-
- 名前を入力
-
- 先程zip化したフォルダをアップロード
-
- ランタイムを選択(今回はNode.jsを選択)
- 「作成」ボタンをクリック
這樣一來,圖層就完成了。
将函数应用于 Lambda 函数
- 適応するLambda関数の「設定」→「デザイナー」→「Layers」を選択し、下の「レイヤー」→「レイヤーの追加」をクリック
- 名前とバージョンを先程作ったレイヤーに設定(新規で作った場合はバージョン1です)
- 各関数からレイヤーに上げたモジュールを削除する
这应该具有与作为软件包运行时相同的操作。