カテゴリ: AWS Lambda 更新日: 2026/05/02

【AWS】LambdaでNode.jsを使うには?対応バージョン・サンプル・Layer活用法

264
【AWS】LambdaでNode.jsを使うには?対応バージョン・サンプル・Layer活用法

先生と生徒の会話形式で理解しよう

生徒

「先生、AWS LambdaでNode.jsを使えるって聞いたんですけど、どんな風に始めたらいいんでしょうか?」

先生

「LambdaはNode.jsととても相性が良いんです。対応バージョンやサンプルコード、さらに便利なLayerの使い方を知ればすぐに実用的な関数が作れますよ。」

生徒

「なるほど!JavaScriptを普段書いているので、Lambdaでも簡単に動かせそうですね。」

先生

「そうです。では実際にLambdaとNode.jsを組み合わせて使う方法を詳しく見ていきましょう。」

1. AWS LambdaでNode.jsを使うメリット

1. AWS LambdaでNode.jsを使うメリット
1. AWS LambdaでNode.jsを使うメリット

Lambdaはサーバーレス環境でコードを実行できるサービスで、Node.jsは公式にサポートされている言語のひとつです。Node.jsは軽量で高速に起動でき、非同期処理が得意なため、Lambdaでのイベント駆動型処理に最適です。

特に以下のようなケースで活用されています。

  • API Gatewayと組み合わせてWeb APIを構築
  • S3のイベントをトリガーにファイル処理
  • DynamoDBへのデータ登録や更新
  • 外部APIとの連携やスクレイピング処理

2. LambdaでサポートされているNode.jsのバージョン

2. LambdaでサポートされているNode.jsのバージョン
2. LambdaでサポートされているNode.jsのバージョン

AWS Lambdaは複数のNode.jsバージョンをサポートしています。記事執筆時点で利用できる代表的なバージョンは以下の通りです。

  • Node.js 14.x
  • Node.js 16.x
  • Node.js 18.x
  • Node.js 20.x(最新推奨)

最新のバージョンを選ぶことでセキュリティやライブラリ対応の面でも安心できます。AWS公式ドキュメントでサポート状況を定期的に確認しましょう。

3. Node.jsで書くLambda関数の基本サンプル

3. Node.jsで書くLambda関数の基本サンプル
3. Node.jsで書くLambda関数の基本サンプル

Node.jsを使ったLambda関数はシンプルに書けます。以下は「Hello World」を返すサンプルです。


exports.handler = async (event) => {
    console.log("イベント内容:", event);
    const response = {
        statusCode: 200,
        body: JSON.stringify("Hello from AWS Lambda with Node.js!"),
    };
    return response;
};

Lambda関数のエントリーポイントはhandlerで、eventにはトリガーから渡される情報が入ります。console.logを使うとCloudWatch Logsに出力されるため、デバッグにも役立ちます。

AWSの基本用語や仕組みを、図解でサクッと理解したい人には、 入門の定番書がこちらです。

AWSの基本が全部わかる教科書をAmazonで見る

※ Amazon広告リンク

4. 外部ライブラリを利用する方法

4. 外部ライブラリを利用する方法
4. 外部ライブラリを利用する方法

Node.jsではnpmでインストールしたライブラリを使えますが、Lambdaにデプロイする際には工夫が必要です。

方法1:プロジェクトごとzipにしてアップロード


npm init -y
npm install axios
zip -r function.zip .

このようにライブラリを含めた状態でzip化し、Lambdaにアップロードすることで利用できます。

方法2:Layerを使う

Lambda Layerにライブラリをまとめておくと、複数の関数で共通利用できて効率的です。特にaxiosやmomentなどよく使うライブラリをLayer化すると便利です。

5. Lambda Layerの活用法

5. Lambda Layerの活用法
5. Lambda Layerの活用法

Layerは外部ライブラリや共通コードを複数のLambda関数で共有できる仕組みです。例えばNode.jsプロジェクトでnodejs/node_modulesディレクトリを作成し、その中にライブラリを配置してzip化するとLayerとして登録できます。


mkdir -p nodejs/node_modules
cd nodejs
npm install lodash
cd ..
zip -r layer.zip nodejs

これをAWS LambdaのコンソールからLayerとしてアップロードし、関数に追加すればライブラリを簡単に利用できます。

6. Node.jsとLambdaを組み合わせる時の注意点

6. Node.jsとLambdaを組み合わせる時の注意点
6. Node.jsとLambdaを組み合わせる時の注意点

Node.jsをLambdaで利用するときは次の点に注意しましょう。

  • 非同期処理を正しく扱う(async/awaitやPromiseを活用)
  • バージョンのサポート終了に注意する
  • 依存ライブラリが多すぎるとデプロイサイズが大きくなる
  • ログ出力を活用してトラブルシューティングしやすくする

これらを意識することで安定したLambda関数を開発できます。

7. 初心者におすすめの学習ステップ

7. 初心者におすすめの学習ステップ
7. 初心者におすすめの学習ステップ

LambdaとNode.jsを初めて使う方には、以下の流れで練習するのがおすすめです。

  1. AWSコンソールからNode.jsのHello Worldを作成
  2. console.logでログを出力してCloudWatchで確認
  3. npmでaxiosを導入し外部APIと連携
  4. Layerを使って共通ライブラリを管理
  5. API Gatewayと組み合わせてREST APIを構築

この順序で学べば、基礎から応用まで自然に理解でき、実務にもすぐ活かせる知識が身につきます。

この記事を読んだ人からの質問

この記事を読んだ人からの質問
この記事を読んだ人からの質問

プログラミング初心者からのよくある疑問/質問を解決します

AWS LambdaでNode.jsを使う最大のメリットは何ですか?初心者でも扱いやすい理由を教えてください。

AWS LambdaでNode.jsを利用する最大の利点は、サーバーの管理が一切不要な「サーバーレス」という仕組みにあります。プログラミング初心者が自分でサーバーを立てようとすると、OSの設定やセキュリティ対策、メモリの管理など膨大な知識が必要になりますが、LambdaならNode.jsのコードを書くだけですぐに実行環境が手に入ります。また、Node.jsはJavaScriptをベースにしているため、Web制作などで使われる言語と同じ感覚でバックエンドの処理が記述できる点も大きな魅力です。起動が非常に速く、使った分だけしか料金が発生しないため、スモールスタートしたい開発者にとって最適な選択肢と言えます。
AWS Lambdaの一覧へ
新着記事
Flutter
Flutterでのリポジトリパターンの実装例
Flutterでリポジトリパターンを実装する方法を完全解説!初心者向けアーキテクチャ設計入門
Java
Java の Objects クラスを使って null チェックを簡単にする方法
JavaのObjectsクラスの使い方を完全ガイド!nullチェックを簡単・安全に行う方法
Java
Java の UUID クラスを使って一意の識別子を作成する方法
JavaのUUIDクラスの使い方を完全ガイド!初心者でもわかる一意な識別子の作成方法
Java
Java の古い日付クラス(Date, Calendar)と新しい日付 API の違い
JavaのDateとCalendarと新しい日付APIの違いとは?初心者向け完全ガイド
人気記事
Java
Java の Random クラスを使ってランダムな数値を生成する方法
JavaのRandomクラスの使い方を完全ガイド!初心者でもわかる乱数生成
Java
Java の getter メソッドと setter メソッドの使い方
Javaのgetterメソッドとsetterメソッドの使い方を完全ガイド!初心者でもわかるアクセス方法
AWS
【AWS】RDSの料金体系まとめ!ざっくり理解・高いと感じる理由も解説
【AWS】RDSの料金体系まとめ!ざっくり理解・高いと感じる理由も解説
AWS
【AWS】VPCとは?初心者向けに仕組み・用途・できることをわかりやすく解説
【AWS】VPCとは?初心者向けに仕組み・用途・できることをわかりやすく解説

🔌 USBポート不足を解消

Type-C 1本で拡張。
開発・作業環境を一気に快適に

UGREEN USB-Cハブを見る

※ Amazon広告リンク