Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
入門 AWS Amplify Gen2 / Introduction to AWS Ampli...
Search
Genki Ogasawara
April 04, 2024
Programming
1.3k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
入門 AWS Amplify Gen2 / Introduction to AWS Amplify Gen2
Genki Ogasawara
April 04, 2024
More Decks by Genki Ogasawara
See All by Genki Ogasawara
IoT デバイス監視から始める SRE / SRE starts with IoT device monitoring
genkiogasawara
2
290
サーバレスで挑む IoT プロジェクトの現実解 / Real solutions for the IoT project using serverless service
genkiogasawara
2
1k
クラウドのスケーリングの力で5時間 かかるバッチジョブを10分に短縮する / Reduce the batch job time by a 36th using the power of scaling in the public cloud
genkiogasawara
2
88
IT知識ゼロからのスタートで、 事業部における内製開発をどうやって 推進してきたか?/How did we promote in-house development by starting from scratch?
genkiogasawara
1
630
クラウドネイティブな省エネサービスの内製開発で、BizDevOpsを実現する / Achieving BizDevOps in in-house development of cloud-native energy-saving services
genkiogasawara
2
1.7k
エンジニアゼロの組織から内製開発の DX をどう実現したのか / How did we achieve DX in in-house development in an organization with zero engineers?
genkiogasawara
8
4.6k
ソフトウェア開発の生産性と信頼性向上に取り組んだ結果、どうなった?/What has changed as a result of efforts to improve software development productivity and reliability?
genkiogasawara
0
220
「魔の川」「死の谷」をクラウド ネイティブなチーム作りで越境する / Crossing the "Devil River" and "Death Valley" by building cloud-native teams
genkiogasawara
2
960
Amazon CodeCatalyst で実現!開発環境とCI/CDパイプライン
genkiogasawara
0
9k
Other Decks in Programming
See All in Programming
業務時間外もAIに働いてもらう話
colorful12
3
10k
go-spidermonkeyでAIエージェントのCode Modeを実装する
syumai
3
1.5k
アクセシビリティから考える情報設計
high_g_engineer
0
350
LoopHub - ローカルで動く GitHub で、AI と共同開発
jugyo
1
500
標準パッケージに uuid が追加された 背景から見る Go らしい意思決定 / go_127_uuid_decision
convto
5
6.1k
AI駆動開発にグラフDBを重ねてみた
satoshi256kbyte
2
780
ハーネス設計入門 〜プロンプト、コンテキストの次〜
kinopeee
56
38k
PHPプロジェクトの結合バランスを可視化する #php_night
kajitack
0
230
LLMは4年分のCompose移行を再現できるのか?実プロダクト279件のXMLで探る自動化の境界線
makun
0
540
AI に Inclusive UI を書かせよう — Design Rules Skill で Compose UI を作り直す
theoriatec2024
1
470
kubernetes コンポーネント開発入門 / 新卒N年目の勉強会&交流会!〜〇〇への誘い〜 #n_study
mazrean
0
210
The Good Stuff, Not the Slop: Engineering High-Quality Android Apps with Modern AI Tooling
danybony
1
240
Featured
See All Featured
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
Music & Morning Musume
bryan
47
7.4k
Building Applications with DynamoDB
mza
96
7.2k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
450
Building the Perfect Custom Keyboard
takai
2
870
The SEO identity crisis: Don't let AI make you average
varn
0
550
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
720
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
410
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
820
Documentation Writing (for coders)
carmenintech
77
5.5k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.9k
The Curse of the Amulet
leimatthew05
2
14k
Transcript
入門 AWS Amplify Gen2 Genki Ogasawara 2024.4.4 #cm_sapporo_study
自己紹介 Genki (小笠原 元気) 所属:北海道ガス株式会社 ロール:JTC 内製開発チームのテックリード(自称) 趣味:旅行・筋トレ 最近興味があること:DevOps, SRE
@geivk
アジェンダ 2 4 3 AWS Amplify とは? AWS Amplify Gen2
の新機能 Amplify Gen2 入門 (DEMOあり) 1 今後やりたいこと まとめ
アジェンダ 2 4 3 AWS Amplify とは? AWS Amplify Gen2
の新機能 Amplify Gen2 入門 (DEMOあり) 1 今後やりたいこと まとめ
AWS Amplify とは? フルスタックのウェブアプリケーションとモバイ ルアプリケーションを数時間で構築します。開 始もスケールも簡単です。 Amplify には、AWS でフルスタックのウェブアプリや モバイルアプリを構築するために必要なものがすべて
揃っています。フロントエンドの構築とホスティング、 認証やストレージなどの機能の追加、リアルタイムの データソースへの接続、デプロイと数百万人のユーザーへの 拡張が可能です。 Amplify.js Hosting CLI Build UI AWS Amplify 引用元:https://aws.amazon.com/jp/amplify/
AWS Amplify とは? フルスタックのウェブアプリケーションとモバイ ルアプリケーションを数時間で構築します。開 始もスケールも簡単です。 ◆ 個人的に好きなポイント ・CI/CD がついていて簡単に設定できる
・バックエンドの追加が簡単 amplify.yml
AWS Amplify とは? フルスタックのウェブアプリケーションとモバイ ルアプリケーションを数時間で構築します。開 始もスケールも簡単です。 ◆ 個人的に好きなポイント ・CI/CD がついていて簡単に設定できる
・バックエンドの追加が簡単 CLI amplify add auth Amazon Cognito AppSync API Gateway amplify add api
アジェンダ 2 4 3 AWS Amplify とは? AWS Amplify Gen2
の新機能 Amplify Gen2 入門 (DEMOあり) 1 今後やりたいこと まとめ
Amplify Gen2 における新機能のアプローチ 開発者体験の改善 バックエンドの生成方法の透明性 を高め、ローカル開発時に実装の カスタマイズや問題のデバッグを 行いたい。より素早くイテレーショ ンを回し、ローカル開発中にチー ムメンバーの環境に干渉すること
なく変更を検証したい。 オンボーディング Amplify と AWS にオンボーディン グする新規開発者が、すでに使い 慣れたツール (TypeScript と Git) を使って作業を進められるよう、コ ンセプト数を削減したい。デプロイ されたクラウドリソースをビルトイ ンで管理したい。 デプロイメント 下位環境から上位環境へコード 変更をマージする際、本番ロー ルアウトを確実に行いたい。ま た、チームの運用方法を反映し たデプロイメント・ワークフローに より、チームの希望に基づいて コードを柔軟に整理したい。 引用元:https://aws.amazon.com/jp/blogs/news/introducing-amplify-gen2/
Amplify Gen2 における新機能のアプローチ 開発者体験の改善 バックエンドの生成方法の透明性 を高め、ローカル開発時に実装の カスタマイズや問題のデバッグを 行いたい。より素早くイテレーショ ンを回し、ローカル開発中にチー ムメンバーの環境に干渉すること
なく変更を検証したい。 オンボーディング Amplify と AWS にオンボーディン グする新規開発者が、すでに使い 慣れたツール (TypeScript と Git) を使って作業を進められるよう、コ ンセプト数を削減したい。デプロイ されたクラウドリソースをビルトイ ンで管理したい。 デプロイメント 下位環境から上位環境へコード 変更をマージする際、本番ロー ルアウトを確実に行いたい。ま た、チームの運用方法を反映し たデプロイメント・ワークフローに より、チームの希望に基づいて コードを柔軟に整理したい。 引用元:https://aws.amazon.com/jp/blogs/news/introducing-amplify-gen2/ クラウド サンドボックス CDK L3 コンストラクト フルスタック Git ブランチ ファイルベース の規約 CDK による バックエンド 拡張 カスタム パイプライン モノレポ / マルチレポ サポート
アジェンダ 2 4 3 AWS Amplify とは? AWS Amplify Gen2
の新機能 Amplify Gen2 入門 (DEMOあり) 今後やりたいこと まとめ 1
クラウドサンドボックス機能 ◆ Gen1 の場合 実は Gen1 でもクラウドサンドボックス 機能があったらしい amplify init
で各ユーザーサンドボックス 環境を作成することができる PRODUCTION SANDBOX (DEVUSER1) SANDBOX (DEVUSER2) amplify init amplify push amplify init amplify push
クラウドサンドボックス機能 ◆ 分離されたサンドボックス 開発中に開発者ごとに分離された専用のバッ クエンドが作成される ◆ 自動的な同期とデプロイ バックエンドのコードを修正すると watch され
ているため自動デプロイされる また、開発を中断する時にはその環境ごと消 すことができる PRODUCTION SANDBOX (DEVUSER1) SANDBOX (DEVUSER2) npx amplify sandbox —profile DEVUSER1 npx amplify sandbox —profile DEVUSER2
クラウドサンドボックス機能 ◆ 分離されたサンドボックス 開発中に開発者ごとに分離された専用のバッ クエンドが作成される ◆ 自動的な同期とデプロイ バックエンドのコードを修正すると watch され
ているため自動デプロイされる 開発を中断する時にはその環境ごと 消すことができる SANDBOX (DEVUSER1) Lambda 関数を追加 プロパティを追加
DEMO
フルスタックの Git ブランチ ◆ Gen1: 各環境にデプロイするコマンド amplify add env prod
amplify env checkout prod amplify push DEV PRODUCTION CLI
フルスタックの Git ブランチ ◆ Gen1: 各環境にデプロイするコマンド amplify add env prod
amplify env checkout prod amplify push ◆ Gen2: コンソールで紐付け 一度紐づければ、git push ベースで更新 普段やっているコマンドベースでの バックエンドデプロイが可能になった
バックエンドのデプロイ ◆ バックエンドのデプロイ 従来: amplify add auth → amplify/auth/resource.ts に
CDK L3 コンストラクトを記述し git push これまでは CLI ベースの追加だったが バックエンドのリソースを IaC 化し デプロイもよりわかりやすくなった カスタムリソースも amplify/ 以下に CDKで追 加できるようになった 引用元 https://aws.amazon.com/jp/blogs/news/introducing-amplify-gen2/
アジェンダ 2 4 3 AWS Amplify とは? AWS Amplify Gen2
の新機能 Amplify Gen2 入門 (DEMOあり) 今後やりたいこと まとめ 1
自分のチームの開発環境 ◆ 開発ツール AWS CDK + AWS Amplify (Gen1) Amazon
CodeCatalyst ・Amplify リソースと CDK をまとめたい ・Amplify CLI が自分しかわからない ・開発者各々のサンドボックスが欲しい AWS Amplify(CLI) AWS CDK Hosting Backend AWS Resource repo (Backend) Cognito, IAM Group repo (Frontend) Amazon CodeCatalyst
monorepo or multi-repo 自分のチームの開発環境(予想) ◆ 開発ツール AWS CDK + AWS
Amplify (Gen1) Amazon CodeCatalyst ・Amplify リソースと CDK をまとめたい ・Amplify CLI が自分しかわからない ・開発者各々のサンドボックスが欲しい フロントエンドに関わる AWS リソースを Amplify Gen2から デプロイするようにしたい! AWS Amplify Gen2 (CLI) Hosting Amazon CodeCatalyst Backend (API + Lambda) (Backend) Cognito, IAM Group (Frontend) サンドボックスが作れる!
monorepo or multi-repo 自分のチームの開発環境(予想) ◆ 開発ツール AWS CDK + AWS
Amplify (Gen1) Amazon CodeCatalyst ・Amplify リソースと CDK をまとめたい ・Amplify CLI が自分しかわからない ・開発者各々のサンドボックスが欲しい スタックのリソース数の上限も 課題になっているのでスタック分割する AWS Amplify Gen2 (CLI) Hosting Amazon CodeCatalyst Backend (API + Lambda) (Backend) Cognito, IAM Group (Frontend) AWS CDK Others
まとめ ・Amplify Gen2 の所感 Gen1 より認知負荷が下がった気がする より使いやすくなり開発者体験が上がりそう 特に、Sandbox 環境が手軽に作れるのがいい GA
されたらプロダクトに導入したい