AWS Cloud9 を使用して、外部ライブラリとともに Lambda 関数をデプロイするにはどうすればよいですか?

最終更新日: 2020 年 1 月 30 日

AWS Cloud9 を使用して開発された AWS Lambda 関数に追加の外部ライブラリを使用したいと考えています。これらのライブラリからモジュールをインポートし、デプロイ時に Lambda 関数に含まれるようにするには、どうすればよいですか?

解決方法

この手順を開始する前に、次のことを確認する必要があります。

モジュールのインポート

注意: このチュートリアルでは、Python を例として使用しますが、Node.js を使用する際のステップも似ています。

1.    AWS Cloud9 コンソールを開きます。

2.    AWS Cloud9 環境を開きます

3.    左のナビゲーションペインで、[環境] ボタンを選択して Environment ウィンドウを開きます。

4.    Lambda 関数の親フォルダは、関数と同じ名前で一覧表示されます。関数の親フォルダのコンテキスト (右クリック) メニューを開きます。

5.    ターミナルセッションを開始するには、 [Open Terminal Here (ここでターミナルを開く)] を選択します。

6.    ターミナルで、次のコマンドを実行してモジュールをインストールします。

注意: ModuleName は、インポートするモジュールの名前に置き換えます。

python -m pip install --target=./ ModuleName

7.    インポートするモジュールごとにステップ 6 を繰り返します。

8.    モジュールをインストールすると、関数の親フォルダが設定されます。

モジュールとともに関数をデプロイする

AWS Cloud9 環境で Lambda 関数を作成したら、モジュールを追加して関数をデプロイします。

1.    [AWS リソース] ウィンドウの [Lambda] セクションを開きます

2.    ローカル関数 で、関数のコンテキスト (右クリック) メニューを開きます。

3.    [デプロイ] をクリックします。

関数をデプロイした後、インポートした追加のモジュールを使用してコードを実行できます。