Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up
for free
Azure Static Web Apps で実現する Serverless CMS / Serverless CMS with Azure Static Web Apps
miyake
July 15, 2020
Technology
2
720
Azure Static Web Apps で実現する Serverless CMS / Serverless CMS with Azure Static Web Apps
Serverless Meetup Japan Virtual #2 のセッション資料です。
https://serverless.connpass.com/event/181523/
miyake
July 15, 2020
Tweet
Share
More Decks by miyake
See All by miyake
miyake
1
390
miyake
0
190
miyake
0
160
miyake
1
400
miyake
1
1.1k
miyake
2
500
miyake
0
360
miyake
1
790
miyake
0
160
Other Decks in Technology
See All in Technology
nakashin1
1
1.1k
feststelltaste
0
110
puhitaku
3
1.1k
manuelmeyer
0
120
karabish
0
190
viva_tweet_x
3
2.4k
yosuke_matsuura
PRO
0
170
lancers_pr
4
1.4k
1027kg
0
160
go5paopao
0
200
raykataoka
9
7.8k
clustervr
0
130
Featured
See All Featured
maltzj
501
36k
philhawksworth
192
8.8k
deanohume
295
28k
marcelosomers
220
15k
brettharned
93
3k
danielanewman
1
510
roundedbygravity
84
7.9k
edds
56
9.4k
ufuk
56
5.4k
matthewcrist
73
7.5k
sugarenia
233
850k
zakiwarfel
88
3.4k
Transcript
Azure Static Web Apps で実現する Serverless CMS Serverless Meetup Japan
Virtual #2 Kazuyuki Miyake 1
About Me 三宅 和之 @kazuyukimiyake 株式会社ゼンアーキテクツ CTO Microsoft MVP (
for Microsoft Azure ) Vue.js-jp, typescript-jp 運営スタッフ PaaS がかりの部屋(Blog): https://k-miyake.github.io/blog/ 2
Azure Static Web Apps Preview 主な特⻑ スタティックサイトに最適化されたホスティング GitHub Actions と統合された
CI/CD Azure Functions によるサーバーレス API の統合 詳細 公式ドキュメント(⽇本語) de:code 2020 でも関連セッションを公開しています(2D 推奨) 3
デプロイの仕組み GitHub Actions と統合された CI/CD 4
統合された API リポジトリに BFF (APIs) を共存させることが可能 Azure Functions (Node.js) で実装する
5
Azure Static Web Apps のユースケース SPA: Single Page Application ブラウザ上で実⾏される(サーバーランタイムが不要の)Web
アプリ SSG: Static Site Generator (JAM Stack を含む) プレレンダリングされた静的コンテンツベースの Web アプリ その他 BFF(Backends For Frontends)は統合 API 機能を利⽤して実現可能 SSR(Server-Side Rendering)には対応していない 6
SSG - Static Site Generator 動的コンテンツを 事前にレンダリング し静的ファイルを⽣成する Jekyll, Gatsby,
HUGO, Next.js, Nuxt.js など 7
Git ベースの SSG コンテンツは Git リポジトリで管理 リポジトリ内の markdown 等でコンテンツを作成、更新 データベースや
CMS サーバー が不要 Git の運⽤に慣れた開発者向け 8
nuxt/content による SSG Nuxt.js の Git-based Headless CMS モジュール ->
公式サイト content/ ディレクトリ内にファイルを書き込む Markdown 内で Vue コンポーネントが利⽤可能(︕) 9
DEMO nuxt/content + Azure Static Web Apps 10
SSG(Git-based) + Azure Static Web Apps ⾃動⽣成された GitHub Actions の
YAML を⼀部カスタマイズする app_build_command : フレームワーク指定の Generate コマンドを呼ぶ 11
API-based SSG (JAM Stack) コンテンツは Headless CMS で管理 Headless CMS
提供の管理画⾯でコンテンツを作成、更新 ビルドプロセスの中で CMS の API からコンテンツを取得する ⼀般ユーザーがコンテンツ更新をするのに向いている 12
Contentful Headless CMS サービス -> 公式サイト コンテンツ管理画⾯は提供され、コンテンツ⾃体は API で取得する フロントエンドは⾃分で作る(⾃由度が⾼まる)
個⼈ブログなどを WordPress から移⾏する⼈が増えている 13
DEMO Contentful + Nuxt.js + Azure Static Web Apps 14
JAM Stack + Azure Static Web Apps プレビュー当初に存在していたバグが解消されて実現できるように︕ Webhook トリガーで
GitHub Actions を実⾏するように YAML を構成する 15
Reference Microsoft Docs – Azure Static Web Apps 公式ドキュメント https://docs.microsoft.com/ja-jp/azure/static-web-apps/
サンプルコード集 - Azure Static Web Apps Gallery Community Projects https://github.com/microsoft/static-web-apps-gallery-code-samples Microsfot Learn Azure Static Web Apps で Angular、React、Svelte、または Vue の JavaScript アプリと API を発⾏する Gatsby と Azure Static Web Apps で静的 Web アプリを作成して発⾏する 16
fin. ご清聴ありがとうございました︕ 17