繁体   English   中英

在AWS Lambda Python函数上进行Shapely设置

[英]Setting up Shapely on AWS Lambda Python functions

我尝试在AWS Lambda上设置Shapely,但始终收到以下错误。

module initialization error: Could not find lib geos_c or load any of its variants ['libgeos_c.so.1', 'libgeos_c.so', '/usr/lib/libgeos_c.so'].

不知道在这种情况下如何shapely Linux实例上构建了我的软件包,并将其用于部署目的。

如果您希望构建自己的与Lambda兼容的二进制文件以用于您的Deployment软件包,则AWS会在此处说明构建它们所需的AMI:

https://docs.aws.amazon.com/lambda/latest/dg/current-supported-versions.html

我已经使用该特定的AMI创建了EC2实例,然后使用pip将所需的软件包安装到目标文件夹-t 完成后,我只需将其打包,并将其用作我的部署程序包的基础,它就可以工作。

或者,我从以下网址下载了: https : //github.com/ryfeus/lambda-packs并复制了我需要的软件包。 (对于shapley,是shapely和shapely-1.6b4.dist-info目录。

我相信目前它们仅针对Python 2.7构建,并且我仅使用上述针对python 2.7的AMI编译了二进制文件。

高温超导

我遇到了同样的问题,并且能够建立一个层以供Lambda使用。 我将其写为开源程序包,在这里https://github.com/bearflagrobotics/libgeos-lambda-build使用Docker构建二进制发行版。 您可以将其作为lambda函数的一层放置,然后运行所需的任何版本的Shapely或Python!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM