I'm simply trying to be able to use PIL in my Python 3.8 Lambda.
I'm trying the following steps:
- Based on this repo: https://github.com/hidekuma/lambda-layers-for-python-runtime
cd /mydir
git clone https://github.com/hidekuma/lambda-layers-for-python-runtime.git
cd lambda-layers-for-python-runtime
mkdir dist
docker-compose up --build
- Based on this guidance: https://www.splunk.com/en_us/blog/cloud/sharing-code-dependencies-with-aws-lambda-layers.html
aws lambda publish-layer-version --layer-name ImageStorageDependencies
--description "A Python 3.8 runtime with PIL and boto3 installed." --license-info "MIT" --zip-file fileb://output.zip --compatible-runtimes python3.7 python3.8 --region us-east-2
I then choose my layer in the Lamda configuration, but when I run this code:
import json
import boto3
import io
from PIL import Image
def lambda_handler(event, context):
#etc
...I get the error:
[ERROR] Runtime.ImportModuleError: Unable to import module 'lambda_function': cannot import name '_imaging' from 'PIL'
Where exactly am I going wrong?!?
from Python Layer Image Failing: "Unable to import module 'lambda_function': cannot import name '_imaging' from 'PIL'"
No comments:
Post a Comment