2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

[Lambda] [Node.js] ZIPによるコードのアップロード時にハマったこと

Posted at

はじめに

Lambdaのチュートリアルで作成するHello,world!を表示させる関数は、実装からデプロイをAWSコンソール上で完結します。

しかし、ビルド時に必要なモジュールがある場合は、ファイルサイズが大きくなってしまうため、ZIPによるコードのアップロードが必要になります。

そのときに少しハマってしまったので、この記事で解説したいと思います。
(AWSコンソールのUIはかなりの頻度で変更されて、戸惑うことがあるかもしれないので、画像を使用せずに解説します。)

アップロードまでの手順

  1. 新規フォルダを作成、デプロイしたいindex.jsとpackage.jsonを格納
  2. node -vでnodeのバージョンを確認
  3. $npm installでビルド
  4. $zip -r project.zip *でzipを作成
  5. project.zipをAWSコンソール上でアップロード
  6. 手順2で確認したnodeのバージョンにランタイムのバージョンを合わせる。

注意事項

  • package.jsonには、aws-sdkモジュールが必須
  • zipコマンドは、index.jsがある階層で実行(Runtime.HandlerNotFoundというエラーが出ます。原因はパスが通っていなくて、ハンドラが見つからないこと)

さいごに

今回は、ZIPによるコードのアップロード手順を解説しました。

この解説により、たくさんあるNode.jsのモジュールを使って、実装できます。(パッケージサイズは、250MBまで)

ぜひ活用してみてください!!!

2
2
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?