【发布时间】:2021-10-17 22:04:35
【问题描述】:
我使用 CDK 部署一个使用多个 python 模块的 lambda 函数。 但是我在部署时遇到了以下错误。
Unzipped size must be smaller than 262144000 bytes (Service: AWSLambdaInte
rnal; Status Code: 400; Error Code: InvalidParameterValueException;
我搜索了以下与此问题相关的其他问题。
但他们专注于 serverless.yaml 并没有解决我的问题。 有没有办法解决这个问题?
这是我用于 CDK 的 app.py。
from aws_cdk import (
aws_events as events,
aws_lambda as lam,
core,
)
class MyStack(core.Stack):
def __init__(self, app: core.App, id: str) -> None:
super().__init__(app, id)
layer = lam.LayerVersion(
self, "MyLayer",
code=lam.AssetCode.from_asset('./lib'),
);
makeQFn = lam.Function(
self, "Singleton",
function_name='makeQ',
code=lam.AssetCode.from_asset('./code'),
handler="makeQ.main",
timeout=core.Duration.seconds(300),
layers=[layer],
runtime=lam.Runtime.PYTHON_3_7,
)
app = core.App()
MyStack(app, "MS")
app.synth()
在 ./lib 目录中,我放置了类似的 python 模块,
python -m pip install numpy -t lib/python
【问题讨论】:
标签: python aws-lambda aws-cdk