教程: 尝试使用AWS Lambda在Amazon S3上使用Lambda Layers

做过的事情 (Zuò guò de

基于AWS官方的Lambda教程,我将图像转换库”sharp”的依赖关系提取到了Lambda Layers中。
通过使用Lambda Layers,我们可以在管理控制台上轻松修改Lambda函数,非常方便。

    • チュートリアル: Amazon S3 で AWS Lambda を使用する

 

    https://docs.aws.amazon.com/ja_jp/lambda/latest/dg/with-s3-example.html

※附言
在教程中,Lambda函数和图片转换库”sharp”是通过部署包进行管理的,无法在管理控制台上修改Lambda函数。

本文摘要

解释事情

    • Windowsで、画像変換ライブラリ”sharp”をzip圧縮する方法

 

    マネジメントコンソールで、Lambda Layersにライブラリを登録して使用する方法

不进行解释

    • Lambdaチュートリアルの内容

 

    Lambda関数をマネジメントコンソール上で作成する手順

环境

    • Node.js 12.x

 

    • AWS CLI 2

 

    Windows10

解释

在Windows系统中,将图像转换库”sharp”压缩为zip文件的方法是什么?

打开命令提示符,在任意文件夹中创建一个名为nodejs的文件夹。

...> mkdir nodejs

请进入nodejs文件夹,并使用npm命令下载图像转换库”sharp”。

.../nodejs> npm install --arch=x64 --platform=linux --target=12.13.0  sharp

右键单击nodejs文件夹并进行zip压缩。
注意:
如果使用powershell的compress-archive进行zip压缩,创建Lambda层时可能会出现以下错误。

...> powershell compress-archive nodejs sharp

レイヤーバージョンを作成できませんでした: Layer conversion failed: Some directories do not have execute permissions;

1. 确认sharp.zip文件夹的结构。如果符合以下文件夹结构就可以了。

sharp.zip
└ nodejs
  |- package-lock.json
  |- /node_modules/sharp
  └ /node_modules/...

在管理控制台中,注册并使用Lambda Layers上的库的方式。

请在Lambda Layer中创建一个名为sharp-layer的图层,并上传sharp.zip文件。详细信息请参考以下屏幕截图。

image (1).png
image (7).png
image (4).png
image (5).png

只需一个选项,用中文本地化改写以下内容:
参考网站

    • チュートリアル: Amazon S3 で AWS Lambda を使用する

 

    • https://docs.aws.amazon.com/ja_jp/lambda/latest/dg/with-s3-example.html

AWS Lambda レイヤー
https://docs.aws.amazon.com/ja_jp/lambda/latest/dg/configuration-layers.html

AWS Lambda Layersでnode_modulesを使う

广告
将在 10 秒后关闭
bannerAds