我想部署将图像从 CloudFront 转换为 WebP 的功能,如上所述 here
但我想使用 serverless
框架,并且我创建了以下 serverless.yml
和我的 handler.js
service: viewer-image-request
plugins:
- serverless-plugin-include-dependencies
provider:
name: aws
runtime: nodejs12.x
region: us-east-1
resources:
Resources:
LambdaAtEdgeRole:
Type: AWS::IAM::Role
Properties:
RoleName: lambda-at-edge
AssumeRolePolicyDocument:
Version: '2012-10-17'
Statement:
- Effect: Allow
Principal:
Service:
- lambda.amazonaws.com
- edgelambda.amazonaws.com
Action: sts:AssumeRole
ManagedPolicyArns:
- arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole
functions:
viewer-request:
handler: handler.handler
role: LambdaAtEdgeRole
package:
exclude:
- node_modules/**
include:
- node_modules/path
- node_modules/useragent
当我部署它时,它会上传lru-cache
、os-tempdir
、pseudomap
、tmp
、useragent
,yallist
到node_modules。代码仅需要 useragent
和 path
,但 path
不会上传。
部署后函数大小为91kB
当我尝试部署 Lambda@Edge 时,我门控此消息
我在这里缺少什么?
最佳答案
看起来 the default values for serverless.yml是:
provider:
memorySize: 1024
timeout: 6
根据错误消息,您需要使用以下值:
provider:
memorySize: 128
timeout: 5
关于aws-lambda - 具有特定依赖项的无服务器部署 lambda@edge,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62478642/