eph*_*ral 6 amazon-s3 amazon-web-services python-imaging-library aws-lambda amazon-rekognition
我正在使用 lambda 函数SearchFacesbyimage 我正在使用这个文档 https://aws.amazon.com/blogs/machine-learning/build-your-own-face-recognition-service-using-amazon-rekognition/
我在哪里使用这个进行比较
from PIL import Image
Run Code Online (Sandbox Code Playgroud)
我收到这个错误
Unable to import module 'lambda_function': No module named PIL
您收到此错误是因为 Python 2.x 的 PIL 或 3.x 的 PILLOW 不是 python lambda 环境中可用的标准库。
要使用这样的库,您必须为您需要的所有库以及要部署的Python代码创建一个自定义部署包。这个包可以在docker中或使用EC2实例轻松制作。
以下是如何在EC2上制作部署包的过程:
假设您的文件名为CreateThumbnail.py
如果您的源代码位于本地主机上,请将其复制到 EC2。
scp -i key.pem /path/to/my_code.py ec2-user@public-ip-address:~/CreateThumbnail.py
通过 SSH 连接到 64 位 Amazon Linux 实例。
ssh -i key.pem ec2-user@public-ip-address
使用以下步骤安装 Python 3.6 和 virtualenv:
a) sudo yum install -y gcc zlib zlib-devel openssl openssl-devel
b) wget https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tgz
c) tar -xzvf Python-3.6.1.tgz
d) cd Python-3.6.1 && ./configure && make
e) sudo make install f sudo /usr/local/bin/pip3 install virtualenv
选择通过pip3安装的虚拟环境
/usr/local/bin/virtualenv ~/shrink_venv
源〜/shrink_venv/bin/activate
在虚拟环境中安装库
pip 安装枕头
pip 安装 boto3
将 lib 和 lib64 站点包的内容添加到 .zip 文件中。请注意,以下步骤假设您使用 Python 运行时版本 3.6。如果您使用的是 2.7 版本,则需要进行相应更新。
cd $VIRTUAL_ENV/lib/python3.6/site-packages
zip -r9 ~/CreateThumbnail.zip
注意- 要包含所有隐藏文件,请使用以下选项:
zip -r9 ~/CreateThumbnail.zip
将 python 代码添加到 .zip 文件中
光盘~
zip -g CreateThumbnail.zip CreateThumbnail.py
现在CreateThumbnail.zip是您的自定义部署包,只需将其复制到 s3 并将其上传到您的 lambda 即可。
此示例取自官方 AWS 文档: https://docs.aws.amazon.com/lambda/latest/dg/with-s3-example-deployment-pkg.html
| 归档时间: |
|
| 查看次数: |
15601 次 |
| 最近记录: |