手順
python
という名称でディレクトリを作成します。(python
でないと Lambda 上でライブラリをインポートできません)
% mkdir python
ターゲットディレクトリを python/
に指定して、利用したい任意のライブラリをインストールします。
% pip install -t python/ requests
zip で固めます。
% zip -r layer.zip python
S3 上にアップロードします。${BUCKET_NAME}
およびプロファイルは自身の環境に合わせて読み替えてください。
% aws s3 cp layer.zip s3://${BUCKET_NAME}/layer.zip --profile main
AWS CLI コマンド publish-lambda-layer
1 を利用して Lambda Layer を公開します。
% aws lambda publish-layer-version
--layer-name my-layer
--description "My Layer"
--license-info "MIT"
--content S3Bucket=${BUCKET_NAME},S3Key=layer.zip
--compatible-runtimes python3.6 python3.7 python3.8 python3.9
--compatible-architectures "arm64" "x86_64"
--profile main
動作確認
対象の Lambda に Layer を追加して、Layer に含まれるライブラリをインポートできれば OK です。
参考
- Lambda レイヤーの作成と共有 - AWS Lambda デベロッパーガイド
-
publish-layer-version - AWS CLI Command Reference ↩