使用 Zappa 部署 lambda 时出错:调用 UpdateFunctionCode 操作时:解压后的大小必须小于 262144000 字节

问题描述

当我尝试使用 Zappa 上传到 AWS Lambda 时,我收到错误消息“解压缩后的大小必须小于 262144000 字节”。阅读以前的线程我被告知我需要添加: "slim_handler": true 处理 zappa_settings.json 中大于 50MB 的文件,但添加后我收到 OSError: Pypi 查找失败。请告诉我如何解决这个问题?

添加“slim_handler”后出错:true -->

回溯(最近一次调用最后一次): 文件“/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/zappa/cli.py”,第2778行,句柄 sys.exit(cli.handle()) 文件“/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/zappa/cli.py”,第512行,句柄 self.dispatch_command(self.command,stage) 文件“/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/zappa/cli.py”,第559行,dispatch_command self.update(self.vargs['zip'],self.vargs['no_upload']) 文件“/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/zappa/cli.py”,第 911 行,更新中 self.create_package() 文件“/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/zappa/cli.py”,第 2237 行,在 create_package 中 venv=self.zappa.create_handler_venv(),文件“/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/zappa/core.py”,第 440 行,在 create_handler_venv raise EnvironmentError("Pypi 查找失败") OSError:Pypi 查找失败

解决方法

解压后的大小必须小于 262144000 字节

这意味着您超出了 lambda 函数的 maximum size,250 MB。

您必须减小部署包的大小,或将其部署为 container lambda,这允许 10 GB Docker 映像。

,

这是因为 Zappa 的依赖配置中的一个错误。请参阅:https://github.com/zappa/Zappa/issues/995。最近在此处回答了此问题:https://stackoverflow.com/a/68191556/1226554

作为快速修复,您可以在 requirements.txt 中将 pip-tools 固定到 6.1.0 版