Claudia.jsの始め方

Claudia.jsの始め方:


はじめに

サーバレスアプリケーションを構築するためにClaudia.jsを利用する。

Claudia.jsは以下の特徴がある。

  • AWSのAPI GatewayとLambdaを用いたREST APIを構築できる
  • 構築に利用する環境は、Node.jsである


実施環境

Mac 10.14.2

node 11.4.0

npm 6.5.0


開発環境構築

npmにより以下をインストールする。

$ npm i claudia -g 
プロジェクトのフォルダを作成し、package.jsonを作成する。

$ mkdir test-api 
$ cd test-api 
$ npm init 
プロジェクトに必要なパッケージをインストールする。

$ npm i -S claudia-api-builder 
$ npm i -S aws-sdk 
サンプルのアプリを作成する(チュートリアルと同じ)。

app.js
var ApiBuilder = require('claudia-api-builder') 
var api = new ApiBuilder() 
 
module.exports = api 
 
api.get('/hello', function() { 
  'use strict' 
  return 'hello claudia.js' 
}) 
AWSで以下を許可するポリシーを作成しIAMユーザにアタッチする。

  • API Gateway:フルアクセス
  • IAM : 完全: リスト, 読み込み, アクセス権限の管理 制限: 書き込み
  • Lambda : 制限: リスト, 読み込み, 書き込み
上記IAMユーザのアクセスキー及びシークレットアクセスキーを生成する。

生成したアクセスキー及びシークレットキーを.aws/credentialsに書き込む。

credentials
[claudia] 
aws_access_key_id = xxxxxxxxxxxxxxxxxx 
aws_secret_access_key = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 
ここではプロファイル名をclaudiaとした。


AWSへのデプロイ

最初のデプロイは以下コマンドで実施する。

$ AWS_PROFILE=claudia claudia create --name testserver --region ap-northeast-1 --api-module app 
実行した結果以下の情報がclaudia.jsonに出力される。

claudia.json
{ 
  "lambda": { 
    "role": "testserver-executor", 
    "name": "testserver", 
    "region": "ap-northeast-1" 
  }, 
  "api": { 
    "id": "zzzzzzzzzz", 
    "module": "app" 
  } 
} 
以降、app.jsの修正を行った後は以下のコマンドで更新する(アクセスキー及びシークレットアクセスキーを特定するために最初にプロファイル名であるclaudiaを指定する)。

$ AWS_PROFILE=claudia claudia update 


動作確認

デプロイが成功したらWebブラウザで以下にアクセスする。

https://.execute-api.ap-northeast-1.amazonaws.com/latest/hello

その結果、以下が返却されたら成功である。

hello claudia.js 

コメント

このブログの人気の投稿

投稿時間:2021-06-17 05:05:34 RSSフィード2021-06-17 05:00 分まとめ(1274件)

投稿時間:2021-06-20 02:06:12 RSSフィード2021-06-20 02:00 分まとめ(3871件)

投稿時間:2020-12-01 09:41:49 RSSフィード2020-12-01 09:00 分まとめ(69件)