How to Create AWS Lambda Layers with node_modules and Add Them to Lambda Functions
I’ll introduce how to create AWS Lambda Layers containing node_modules and add them to Lambda functions.
I researched and verified how to add node_modules used by Lambda functions to Lambda Layers.
AWS SDK for JavaScript を Node.js Lambda 関数に統合する
mkdir -p aws-sdk-layer/nodejs
cd aws-sdk-layer/nodejs
npm init
docker run --entrypoint "" \\
-v "$PWD":/var/task "public.ecr.aws/lambda/nodejs:14" \\
/bin/sh -c "npm install aws-sdk --save; exit"
zip -r ../package.zip ../
aws lambda publish-layer-version \\
--layer-name aws-sdk \\
--description "aws-sdk layer" \\
--license-info "MIT" \\
--compatible-runtimes nodejs14.x \\
--zip-file fileb://../package.zip \\
--region ap-northeast-1
aws lambda update-function-configuration \\
--function-name your-lambda-function \\
--layers arn:aws:lambda:ap-northeast-1:xxxxxx:layer:aws-sdk:1 \\
--region ap-northeast-1
mkdir -p google-cloud-bigquery-layer/nodejs
cd google-cloud-bigquery-layer/nodejs
docker run --entrypoint "" \\
-v "$PWD":/var/task "public.ecr.aws/lambda/nodejs:14" \\
/bin/sh -c "npm install --save @google-cloud/bigquery; exit"
zip -r ../package.zip ../
aws lambda publish-layer-version \\
--layer-name google-cloud-bigquery \\
--description "@google-cloud/bigquery layer" \\
--license-info "MIT" \\
--compatible-runtimes nodejs14.x \\
--zip-file fileb://../package.zip \\
--region ap-northeast-1
aws lambda update-function-configuration \\
--function-name your-lambda-function \\
--layers arn:aws:lambda:ap-northeast-1:xxxxxx:layer:google-cloud-bigquery:1 \\
--region ap-northeast-1
That’s all from the Gemba.