Lambda 用の .zip ファイルを作成する場合は「zip -r .」を使う方がベター
AWS Lambda で (標準パッケージ以外の) 外部パッケージを利用したい場合は、Python のソースコードと依存するパッケージを .zip アーカイブにして、Lambda へアップロードする必要があります。 詳しくは AWS Lambda Deployment Package in Python に記載されていますが、boto3
だけは例外的に .zip へ含める必要がありません。 AWS の公式ドキュメントでは、依存モジュールを .zip アーカイブへ含める際に以下のような手順になっていました。
1 2 3 4 |
|
ネット上の公開情報では zip -r *
しているケースをよく見るのですが、bash で作業する場合、これでは .
で始まる隠しファイル/隠しディレクトリは .zip ファイルに含まれません。 これらを含めたい場合は AWS 公式ページにあるように zip -r .
とピリオドを使う必要があります。 現在ディレクトリのひとつ上のディレクトリに AWS Lambda アップロード用の .zip ファイルを作成するには、例えば以下のように実行します。
1 |
|