Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
AWS SAMをさわってみた話 / Try AWS SAM
Search
naoya_s
February 18, 2022
Programming
0
28
AWS SAMをさわってみた話 / Try AWS SAM
naoya_s
February 18, 2022
Tweet
Share
More Decks by naoya_s
See All by naoya_s
静的解析ツールの刷新に向けた取り組み
suginao
1
320
RuffではじめるPython開発 / Python Development with Ruff
suginao
0
46
全国在宅勤務制度のすゝめ / Practice of National Telecommuting System
suginao
0
9
サーバーレスなAPIサービスの全容 / All of the serverless API services
suginao
0
1.1k
(エンジニアに送る)人に優しくなるための3つの方法 / 3 Ways for Engineers to Be Kind to People
suginao
0
15
Other Decks in Programming
See All in Programming
バイラテラルアップサンプリング
fadis
2
180
fieldalignmentから見るGoの構造体
kuro_kurorrr
0
130
AIコーディングの理想と現実
tomohisa
35
37k
ComposeでWebアプリを作る技術
tbsten
0
130
大LLM時代にこの先生きのこるには-ITエンジニア編
fumiyakume
8
3.3k
VitestのIn-Source Testingが便利
taro28
8
2.4k
音声プラットフォームのアーキテクチャ変遷から学ぶ、クラウドネイティブなバッチ処理 (20250422_CNDS2025_Batch_Architecture)
thousanda
0
400
Dissecting and Reconstructing Ruby Syntactic Structures
ydah
3
2.1k
カウシェで Four Keys の改善を試みた理由
ike002jp
1
120
Instrumentsを使用した アプリのパフォーマンス向上方法
hinakko
0
240
Ruby で作る RISC-V CPU エミュレーター / RISC-V CPU emulator made with Ruby
hayaokimura
5
570
GitHub Copilot for Azureを使い倒したい
ymd65536
1
320
Featured
See All Featured
Why You Should Never Use an ORM
jnunemaker
PRO
56
9.3k
Build your cross-platform service in a week with App Engine
jlugia
230
18k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.8k
Build The Right Thing And Hit Your Dates
maggiecrowley
35
2.7k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.4k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.2k
A better future with KSS
kneath
239
17k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
780
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
23
2.7k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
13
830
Transcript
AWS SAMをさわってみた話 2022/2/18 ブランドソリューション & 計測 LT会
話すこと • AWS SAM(Serverless Application Model)について簡単な解説 • 開発の流れ • 今後が楽しみな機能
株式会社ZOZOテクノロジーズ ブランドソリューション開発部 プロダクト開発チーム 杉田 尚弥 '19 株式会社アラタナに新卒入社 株式会社ZOZOテクノロジーズに転籍 '20 ・FBZの保守/運用
'22 ・FBZのセキュリティアップデート対応 ← 今ここ '21 株式会社ZOZOに転籍 ・ZOZOMOの開発・FBZの保守/運用
• AWS SAM(Serverless Application Model)について簡単な解説 • 開発の流れ • 今後が楽しみな機能
AWS SAM(Serverless Application Model)の簡単な紹介 • AWSが提供しているサーバーレスアプリケーション構築用のフレームワーク • AWS CloudFormationの拡張
◦ AWS CloudFormationで利用できるリソースや組み込み関数も使える ◦ 各種SaaSとのインテグレーションもサポート(Datadog・GitHub Actionsなど) • ローカルでのデバッグが容易 ◦ AWS Tookkitを使ってコードのステップスルーやデバッグが可能 ◦ SAM CLIを使うことで実際のLambda実行環境をローカルに再現できる
• AWS SAM(Serverless Application Model)について簡単な解説 • 開発の流れ • 今後が楽しみな機能
開発の流れ 1. セットアップ 2. プロジェクト作成 3. 動作確認 4. ビルド 5.
デプロイ
1. セットアップ(macOS向け) 2. プロジェクト作成 3. 動作確認 4. ビルド 5.
デプロイ 開発の流れ ❗注意❗ ・ローカルでLambdaを実行する場合はDockerも必要 ・IAMの権限とAWS認証情報の設定は事前に行っておく
1. セットアップ 2. プロジェクト作成 3. 動作確認 4. ビルド 5. デプロイ
開発の流れ
1. セットアップ 2. プロジェクト作成 3. 動作確認 a. ペイロード作成 b. Lambdaの実行
4. ビルド 5. デプロイ 開発の流れ 【対応オプション】 alexa-skills-kit alexa-smart-home apigateway batch cloudformation cloudfront cloudwatch codecommit codepipeline cognito config dynamodb kinesis lex rekognition s3 ses sns sqs stepfunctions
1. セットアップ 2. プロジェクト作成 3. 動作確認 a. ペイロード作成 b. Lambdaの実行
4. ビルド 5. デプロイ 開発の流れ ❗注意❗ AWS SAM テンプレートに複数の関数が定義されている場合は、 関数の論理IDを指定する必要があります
1. セットアップ 2. プロジェクト作成 3. 動作確認 4. ビルド 5. デプロイ
開発の流れ SAMのテンプレートやアプリケーションコードの ビルドを実施。期待される形式と保存場所に アーティファクトをコピーする
1. セットアップ 2. プロジェクト作成 3. 動作確認 4. ビルド 5. デプロイ
a. ローカル b. CI/CD 開発の流れ 初回デプロイのみ対話形式で設定を行う (実行時に設定を引数で渡すことで省略可) 実行後はtoml形式のファイルが生成されて、次回以降はその ファイルが参照される
1. セットアップ 2. プロジェクト作成 3. 動作確認 4. ビルド 5. デプロイ
a. ローカル b. CI/CD 開発の流れ GitHub Actionsを使ったデプロイパイプラインも、 公式がアクションを公開している もちろん、AWS CodePipelineも対応! その他サービスのサポートに関しては、 ドキュメントを参照ください 🙏
• AWS SAM(Serverless Application Model)について簡単な解説 • 開発の流れ • 今後が楽しみな機能
AWS SAM Accelerate (誤解を恐れず)一言で説明すると、 Lambdaの開発で「ホットリロード」が使えるよ!ってこと まだプレビュー段階なので、今後の動向が気になるところ
おわり