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
30
AWS SAMをさわってみた話 / Try AWS SAM
naoya_s
February 18, 2022
Tweet
Share
More Decks by naoya_s
See All by naoya_s
静的解析ツールの刷新に向けた取り組み
suginao
1
360
RuffではじめるPython開発 / Python Development with Ruff
suginao
0
54
全国在宅勤務制度のすゝめ / Practice of National Telecommuting System
suginao
0
10
サーバーレスなAPIサービスの全容 / All of the serverless API services
suginao
0
1.2k
(エンジニアに送る)人に優しくなるための3つの方法 / 3 Ways for Engineers to Be Kind to People
suginao
0
18
Other Decks in Programming
See All in Programming
Introducing ReActionView: A new ActionView-Compatible ERB Engine @ Kaigi on Rails 2025, Tokyo, Japan
marcoroth
3
980
Six and a half ridiculous things to do with Quarkus
hollycummins
0
140
CSC509 Lecture 02
javiergs
PRO
0
410
dynamic!
moro
10
7.1k
Conquering Massive Traffic Spikes in Ruby Applications with Pitchfork
riseshia
0
160
なぜGoのジェネリクスはこの形なのか? Featherweight Goが明かす設計の核心
ryotaros
7
1.1k
The Flutter Journey of Building a Live Streaming App — With a Side of Performance Tuning
u503
1
110
Domain-centric? Why Hexagonal, Onion, and Clean Architecture Are Answers to the Wrong Question
olivergierke
2
790
Your Perfect Project Setup for Angular @BASTA! 2025 in Mainz
manfredsteyer
PRO
0
150
大規模アプリのDIフレームワーク刷新戦略 ~過去最大規模の並行開発を止めずにアプリ全体に導入するまで~
mot_techtalk
0
410
Pythonスレッドとは結局何なのか? CPython実装から見るNoGIL時代の変化
curekoshimizu
5
1.7k
開発生産性を上げるための生成AI活用術
starfish719
3
390
Featured
See All Featured
Bash Introduction
62gerente
615
210k
What's in a price? How to price your products and services
michaelherold
246
12k
Git: the NoSQL Database
bkeepers
PRO
431
66k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.9k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
A Tale of Four Properties
chriscoyier
160
23k
Visualization
eitanlees
148
16k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.6k
Making Projects Easy
brettharned
119
6.4k
Designing for Performance
lara
610
69k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.2k
A better future with KSS
kneath
239
18k
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の開発で「ホットリロード」が使えるよ!ってこと まだプレビュー段階なので、今後の動向が気になるところ
おわり