gpt4 book ai didi

python - 为什么 Zappa 部署缺少虚拟环境中存在的所有/大多数包?

转载 作者:行者123 更新时间:2023-12-02 05:47:48 26 4
gpt4 key购买 nike

尝试通过 Zappa 将 Python 脚本部署到 AWS。脚本在本地虚拟环境(使用 virtualenv)中工作,但 Zappa 部署失败,缺少多个包。尽管进行了广泛的故障排除,但肯定遗漏了一些非常基本的东西。详情如下,任何想法表示赞赏。

错误:zappa deploy dev 错误。 zappa tail 显示 [ERROR] ModuleNotFoundError:没有名为“pandas”的模块。无论 main.py` 中的第一个导入语句是什么,它都会出错,这表明问题并非特定于 Pandas pkg。

下面包含设置 json 和项目目录结构的屏幕截图。

尝试了以下但没有成功:

  • 添加了 requirements.txt 项目目录,其中包含 pip freeze 显示的所有 localenv 包
  • 在 zappa_settings.json 中添加了“include”设置
  • zappa package生成的zip文件中出现确认的pandas和其他依赖包

已解决编辑: 项目目录太大。 AWS Lambda(以及随后的 Zappa)将项目目录(包括依赖项)限制为 512MB。探索替代云基础设施。

enter image description here

enter image description here

最佳答案

已解决:根本原因是项目目录太大。 AWS Lambda(和 Zappa)默认将项目目录(包括依赖项)限制为 512MB,并且 Zappa 的 slim_handler 不会自动绕过它。所以它看不到这些库,因为在运行时 Lambda 上没有足够的空间容纳它们。

这可以在 AWS Lambda 控制台中修复,在功能下 --> [选择您的功能] --> 配置 --> 一般配置 --> 临时存储(编辑目录大小)。

关于此错误的信息很少,所以希望这对某人有所帮助:)

关于python - 为什么 Zappa 部署缺少虚拟环境中存在的所有/大多数包?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74889192/

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