gpt4 book ai didi

Python AWS Lambda 部署 - 没有 Zappa 要求的 Zappa 包

转载 作者:行者123 更新时间:2023-12-04 12:50:38 25 4
gpt4 key购买 nike

我想在 AWS Lambda 上打包和部署一个简单的项目,使用 Zappa,但没有 Zappa 要求的开销。
鉴于这个简单的场景:
lambda_handler.py

def handle(event, context):
print('Hello World')

我有一个 deploy.sh执行此操作的脚本:
#!/usr/bin/env bash
source venv/bin/activate
zappa package -o lambda.zip
aws lambda update-function-code --function-name lambda-example --zip-file fileb://./lambda.zip

这有效, 但是 最终的 lambda.zip 比它需要的大得多:
enter image description here

我知道对于这种特定情况,不需要 Zappa,但在实际项目中,我使用了一些需要 https://github.com/Miserlou/lambda-packages 的库。 ,使用 Zappa 是安装它们的最简单方法。

如何在没有这种开销的情况下生成 python lambda 包?

最佳答案

首先,您可以使用 slim_handler 允许上传大于 50M 的文件。其次,正如@bddb 已经提到的,您可以使用 排除一些文件,例如 .pyc、zip 等。排除 属性(property)。请在此处找到更多详细信息:

https://github.com/Miserlou/Zappa#package

这是您的 的示例zappa_settings.json 可能看起来像:

 {
"dev": {
...
"slim_handler": false, // Useful if project >50M. Set true to just upload a small handler to Lambda and load actual project from S3 at runtime. Default false.
"exclude": ["*.gz", "*.rar"], // A list of regex patterns to exclude from the archive. To exclude boto3 and botocore (available in an older version on Lambda), add "boto3*" and "botocore*".
}
}

关于Python AWS Lambda 部署 - 没有 Zappa 要求的 Zappa 包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52545827/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com