AWSのCloud9でLambda(Node.js 8.10)を使う

AWSのLambda(Node.js 8.10)を編集するのにCloud9を使う時の手順など

元々、AWSのLambdaのオンラインエディタはかなり良いが、 npmのモジュールのインストールが出来ない。 かといって、わざわざローカルに環境構築するのも・・・って時に見つけたのがCloud9

良い点

他にもいろいろありそうだけど、1時間ぐらい触ってこの感想

特にAWSとの連携はかなり便利で、そのまま動作の確認もできるのは効率が良い

東京リージョンではないので、レイテンシが出るかと思ったが今の所問題にはなってない

手順

  1. Cloud9を構築
    (とりあえず無料で使える様に)

    • リージョン: シンガポール
    • Environment type: EC2
    • Instance type: t2.micro
    • Cost-saving setting: After 30 minutes
  2. Nodeのバージョンアップ
    (構築直後はv6.13.1だったので)

    nvm install v8.10.0
    npm update -g npm
    nvm alias default v8.10.0
    
  3. 連携するAWSのリージョンを設定
    (Lambdaは東京リージョンを利用しているので)

    1. 右上にある歯車アイコンを選択
    2. 左側のリストから「AWS SETTINGS」を開く
    3. 「AWS Region:」で東京を選択
  4. Lambdaから取り込む

    1. 右端の「AWS Resources」タブを選択
    2. 右上の更新ボタンで最新情報を取得
    3. 「Remote Functions」を開く
    4. リンクさせたい関数を右クリックして「Import」
  5. Lambdaへ反映させる

    1. 右端の「AWS Resources」タブを選択
    2. 「Local Functions」を開く
    3. 反映させたい関数を右クリックして「Deploy」

※Cloud9上からLambdaの関数の作成やAPI Gatewayの作成もできるが 名前にいろいろと自動付与されたり、Node v8が直接選べなかったりなので、先にLambda側で作成した方が良さげ