Help us understand the problem. What is going on with this article?

Serverless Framework1.0がリリースされたので触ってみる

More than 3 years have passed since last update.

概要

スクリーンショット 2016-07-14 22.57.53.png

http://blog.serverless.com/serverless-v1-0-alpha1-announcement/
サーバレスな構成でアプリケーションをさくっと作れるServerless Framworkの1.0ALPHA版がリリースされたとのことで触ってみました。

インストール

以下のコマンドでインストールします

$ npm install -g serverless@alpha

以下のコマンドでヘルプが表示されればインストールOKです

$ serverless -h

セットアップ

以下のコマンドでまずはサービスを定義します。

$ serverless create --name first-service --provider aws

0系のバージョンではこれがプロジェクトという単位で分けられていました。first-serviceは名前を変えてください。これはバグでS3のグローバルな名前空間制限に引っかかるみたいっす。以下該当のissue
https://github.com/serverless/serverless/issues/1458

作ったサービスのディレクトリ構成を見てみましょう。めっちゃシンプルになってる!!
後、JSONじゃなくてyamlになってる!!

├── handler.js
├── serverless.env.yaml
└── serverless.yaml

用途は以下の通り

  • handler.js:Lambdaファンクションの実体
  • serverless.env.yaml:リージョンやステージなどのサービス全体の環境設定
  • serverless.yaml:クラウド側の使用するリソースの設定

API Gateway + Lambdaのセットアップ

serverless.yamlの設定は以下のとおり。helloってLambdaファンクションをhttps://<API Gateway エンドポイント>/dev/hello をGETメソッドで呼び出すための設定です。

短か!!設定ファイル、、短か!!!

serverless.yaml
service: horike-service
provider: aws
functions:
    hello:
        handler: handler.hello
        events:
            - http:
                path: hello
                method: GET

そして以下のコマンドでAWS上にデプロイします。

$ serverless deploy

以下のとおりcurlでデプロイしたAPIにアクセスすると。ちゃんとLambdaファンクションの結果が返ってきました。

[horike@horiketakahiro-no-MacBook-Pro horike-service]$curl https://ctlje3drz2.execute-api.us-east-1.amazonaws.com/dev/hello
{"message":"Go Serverless v1.0! Your function executed successfully!"}

まとめ

というわけで、Serverless Framework1.0のさわりを紹介しました。
大きく変わったところとして、API Gatewayの超絶面倒くさい設定がほとんどなくなったことがよくなったところかなと思います。これなら心を折れること無く設定ファイルを書くことも出来そうです。

ちなみに、1.0ではAWS以外にもGoogle Cloud Functions, Microsoft Azure, IBM OpenWhiskなどの対応も実施されるみたいです。これからますます楽しみっすね!

horike37
CEO of Serverless Operations, Inc Serverless Framework Core Maintainer
https://serverless.co.jp
serverless-operations
AWSクラウド技術の豊富な知見を活かし、サーバーレスによる開発や運用の支援、コンサルティングまで行う会社です
https://serverless.co.jp/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした