AWS Lambdaでは、特定のライブラリ(モジュール)が使用できない場合があります。そのため、外部モジュールの追加が必要な場面があります。ここでは、AWS Lambdaで外部モジュールを追加する方法について説明します。
外部モジュールの追加方法
-
モジュールをzipでアップロード: AWS Lambdaで外部モジュールを使用するための最も基本的な方法は、モジュールをzipでアップロードすることです。これは、
pip install
でデータを取得し、それをzipにしてアップロードするだけです。 -
エラーの対処: しかし、
pip install
でモジュールをインストールしようとしたときに、Unable to import module 'lambda_function': No module named 'PIL'
というエラーが発生することがあります。これは、LambdaがAmazonlinux2で実行されているため、外部モジュールがAmazonlinux2用になっていないと出るエラーです。 -
環境に合わせたビルド: この問題を解決するためには、環境に合わせてビルドする必要があります。具体的には、EC2でamazonlinux2のインスタンスを作成し、そこでモジュールを作成するか、Dockerにてamazonlinux2のコンテナでモジュールを作成します。
- 以上が、AWS LambdaでPythonの外部モジュールを追加する基本的な手順です。これにより、AWS LambdaでPythonの外部モジュールを効果的に使用することが可能になります。
-
[AWS Lambda] Pythonで外部モジュール(Pillow)を使う – Qiita