【发布时间】:2018-06-15 07:45:15
【问题描述】:
我正在努力了解如何最好地管理 python 包以压缩 AWS lambda 函数。
在我的项目文件夹中,我有许多 .py 文件。作为构建过程的一部分,我将它们压缩并使用 AWS API 创建和发布我的 lambda 函数,该函数提供 zip 文件作为该调用的一部分。
因此,我认为我需要在我的项目文件夹中包含我的 lambda 依赖的所有包。
考虑到这一点,我拨打pip如下:
pip install -t . tzlocal
这似乎在我的项目文件夹中填满了很多东西,我不确定是否所有这些都需要压缩到我的 lambda 函数部署中,例如
.\pytz
.\pytz-2018.4.dist-info
.\tzlocal
...
...
第一个问题 - 所有这些东西都需要压缩到我的 lambda 中吗?
如果没有,我如何获得一个包,只为我提供进入我的 zip 文件所需的位?
来自 .Net / Node 背景 - 前者是我 NuGet 我的包,它进入一个不错的 packages 文件夹,其中仅包含我需要的 .dll 文件,然后我将其引用到我的项目中。
如果我确实需要所有这些文件,有没有办法将它们“放置”在更整洁的地方 - 比如在包文件夹中?
最后,有没有办法只下载我真正需要的二进制文件?我在这里读到的问题是 Lambda 函数需要与我在桌面开发环境 (Windows) 上使用的二进制文件不同的二进制文件,因此也不知道如何解决该问题。
【问题讨论】:
标签: python amazon-web-services aws-lambda