AWS Lambda层如何与私有conda仓库配合使用?

我使用conda并有一个私人的conda存储库

一个函数可以使用的最大层数为五。因此,我不能将我的每个私有conda软件包都单独上传为单独的图层-因为函数可能需要使用5个以上的

尚不清楚应该如何解决这些问题,或者这些层是否不是针对此类事物设计的

我是否只有一个lambda层用于基本的conda环境,然后让lambda使用该层导入我的私有conda软件包?还是我应该将自己的整个函数作为一个新层上载,我将使用所有私有conda deps在本地构建我的conda python应用程序,将其作为一个新层上载,然后进行 different 函数调用它吗?

zhenyuting 回答:AWS Lambda层如何与私有conda仓库配合使用?

您可以尝试将所有私有程序包构建到单独的单个-层中,然后将自己的(单个)层与函数一起使用。 ...对您有用吗? (没有层限制,它们只必须包含单个包/模块)

如果您的基本conda env也包含公共软件包,那么您也可以为该环境构建一个单独的层-因此,在您的函数中,您将包括两层-一层用于基本conda env,一层用于所有您的环境私人包裹。

使用我的代码,我将conda用于开发,但不用于部署。目前,我已经构建并使用了一个包含skimage的私有层,但是我将所有私有包都与lambda本身一起构建了,而不是将它们捆绑为一个层。但是我已经考虑过将来采用这种方式。

我还使用AWS的SAM进行构建和打包,这使事情变得容易得多。但是我不确定用conda而不是pip来实现它有多么容易。

Here's a post I did on using SAM to make layers-如果走那条路线可能会有所帮助(...您现在可以使用SAM来构建/安装层,但是需要一些扭转的手臂)

本文链接:https://www.f2er.com/3083672.html

大家都在问