Rekognition 실습을 하다가 python의 matplotlib 라이브러리를 사용할 코드를 돌리는데 자꾸 모듈을 찾을 수 없다는 에러가 떴다.. 이를 해결할 방법을 찾았다! 먼저 해결했던 방법부터 적어보려 한다.

참고: https://awstip.com/how-to-use-your-favorite-python-packages-in-aws-lambda-1a514c7096f1


  • python matplotlib 모듈 다운로드

파일 경로 주의...❗

matplotlib/python/해당 모듈들...

pip install matplotlib -t {파일 경로}

 

  • Layer(계층) 생성

위에서 생성했던 zip파일을 올려주자.

(런타임 유의! 선택한 런타임에서만 계층이 적용된다.)

 

  • Lambda function에 Layer 추가

사용자 지정계층으로 Layer 추가하면 된다.

(버전도 설정이 가능하니 모듈 업데이트를 원하면 버전을 업그레이드 하면 될듯)

 

 

❗ 추가적으로.. 문제가 있는 것 같다.. ❗

pip uninstall numpy 후 pip isntall numpy를 해도 계속 오류가 생긴다.

계속 같은 버전으로 설치가 되고 있는데 이를 어떻게 해결해야하나?

NOPE! 컴파일 된 바이너리들은 Amazon Linux와 호환되어야 한다.(OS 호환의 문제)

(numpy의 경우 C코드가 있기 때문)

 

  • Amazon Linux 환경에서 python 패키지들을 설치

아마 cloud9에서 패키지 받아서 진행하면 가능할듭..

아래의 명령어들은 기본적으로 cloud9은 python3.7 버전이라.. 버전 업그레이드를 원하면 실행

yum install -y gcc openssl-devel bzip2-devel libffi-devel
yum install -y wget

cd /usr/local/src
wget {원하는 버전 python download에서 가져오기}
tar xf {해당 파일}

cd {압축 푼 폴더}
./configure --enable-optimizations
make altinstall

python{해당 버전} --version
python{해당 버전} -m pip install --upgrade pip

'Cloud > AWS' 카테고리의 다른 글

[AWS] Fan-Out 시나리오 -1(easy)  (0) 2022.10.11
[AWS] Event-Driven Architecture  (0) 2022.10.11
[AWS] Amazon Rekognition 개념  (1) 2022.10.05
[AWS] Amazon Rekognition 실습  (0) 2022.10.04
[AWS] EC2로 MQTT 통신 테스트  (0) 2022.09.27

+ Recent posts