2016-06-23 6 views
6

업로드 된 이미지의 미리보기 이미지를 만들기 위해 AWS 람다 함수를 만들려고합니다. 내 스크립트를 로컬로 잘 실행되고, 난 내 기능을 배포하는이 tutorial을 따라하지만 난 내 기능을 시험하고있을 때 참으로 나는이 다음과 같은 로그를 볼 수 있으며, 베개 라이브러리에 문제가 :AWS Lambda : 베개 라이브러리 사용 방법?

enter image description here

을 같은 문제가있는이 post을 찾았지만 제 경우에는 명령 줄을 실행할 수 없습니다.

+0

해결 방법 : https://github.com/Miserlou/lambda-packages/tree/master/lambda_packages - 여기에 PIL 패키지가 미리 컴파일되어 있습니다. – AddingColor

답변

5

람다 패키지에 libjpeg.so을 포함해야하지만 patchelf 유틸리티에서도 약간의 조정이 필요합니다. 당신이 (오히려 virtualenv를 통해보다) "pip install모듈 이름-t"를 통해 람다 패키지를 준비한다고 가정하면, 다음을 수행하십시오

cd into/your/local/lambda/package/dir 
cp -L $(ldd PIL/_imaging.so|grep libjpeg|awk '{print $3}') PIL/ 
patchelf --set-rpath PIL PIL/_imaging.so 
# zip, deploy and test the package 

이 스크립트는 베개 버전 3.2.0 작동합니다.

우분투에서는 'apt install' 일 수 있지만 다른 리눅스에서는 built from source 일 필요가 있습니다.

+0

이상하지만, 다음 행을 추가 할 때만 작동합니다.'' sys.path.append ("./ PIL")''' –