AWSのCloud9でLambda(Node.js 8.10)を使う
Apr 17, 2018 · server · webaws
AWSのLambda(Node.js 8.10)を編集するのにCloud9を使う時の手順など
元々、AWSのLambdaのオンラインエディタはかなり良いが、 npmのモジュールのインストールが出来ない。 かといって、わざわざローカルに環境構築するのも・・・って時に見つけたのがCloud9
良い点
- 料金は1年の無料枠内で使えるし、いざとなれば他のサーバでも良いみたい
- Nodeのバージョンを選択できる
- npmが使える
- AWS、特にLambdaと連携している
他にもいろいろありそうだけど、1時間ぐらい触ってこの感想
特にAWSとの連携はかなり便利で、そのまま動作の確認もできるのは効率が良い
東京リージョンではないので、レイテンシが出るかと思ったが今の所問題にはなってない
手順
Cloud9を構築
(とりあえず無料で使える様に)- リージョン: シンガポール
- Environment type: EC2
- Instance type: t2.micro
- Cost-saving setting: After 30 minutes
Nodeのバージョンアップ
(構築直後はv6.13.1だったので)nvm install v8.10.0 npm update -g npm nvm alias default v8.10.0
連携するAWSのリージョンを設定
(Lambdaは東京リージョンを利用しているので)- 右上にある歯車アイコンを選択
- 左側のリストから「AWS SETTINGS」を開く
- 「AWS Region:」で東京を選択
Lambdaから取り込む
- 右端の「AWS Resources」タブを選択
- 右上の更新ボタンで最新情報を取得
- 「Remote Functions」を開く
- リンクさせたい関数を右クリックして「Import」
Lambdaへ反映させる
- 右端の「AWS Resources」タブを選択
- 「Local Functions」を開く
- 反映させたい関数を右クリックして「Deploy」
※Cloud9上からLambdaの関数の作成やAPI Gatewayの作成もできるが 名前にいろいろと自動付与されたり、Node v8が直接選べなかったりなので、先にLambda側で作成した方が良さげ