$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Azure Container Appsを使ってみた
Search
北村
October 28, 2025
0
53
Azure Container Appsを使ってみた
北村
October 28, 2025
Tweet
Share
More Decks by 北村
See All by 北村
ギャルのパンティおくれ
shu_kita
1
52
LSMツリー
shu_kita
0
18
掲示板への不適切な投稿を防ぐ
shu_kita
0
59
正規表現エンジンを自作した話
shu_kita
0
15
Featured
See All Featured
Building AI with AI
inesmontani
PRO
1
570
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
100
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
0
160
Everyday Curiosity
cassininazir
0
110
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
0
1k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
57
37k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
850
A Tale of Four Properties
chriscoyier
162
23k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Visualization
eitanlees
150
16k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Marketing to machines
jonoalderson
1
4.3k
Transcript
Azure Container Apps を使ってみた shu-kitamura
自己紹介 • 名前 ◦ 北村(shu-kitamura) • 業務 ◦ SIer ◦
デバイスドライバ開発・保守 • 趣味 ◦ テニス、フットサルやってます ◦ お笑いが好きです • 最近 ◦ 先週合格しました
話すこと • Azureのコンテナサービス • Container Appsと主要コンポーネント • アプリのデプロイ
Azureのコンテナサービス
Azureのコンテナサービス • Azure Container Instances ◦ サーバーを管理することなくコンテナを実行 • Azure Container
Apps ◦ フルマネージドのサーバーレスコンテナ基盤 • Azure Kubernetes Service ◦ マネージドの Kubernetes でコンテナを実行 • Azure App Services for Container ◦ コンテナ化された Web アプリをWindows / Linux上で実行
Azure Container Apps とは フルマネージドなサーバレスコンテナ基盤。Kubernetes をラップしている。 開発者は Kubernetes の構築や運用をしなくていい。 2022年5月に
GA された。コンテナ系サービスでは新しい方。 以下のような需要があったのではないか(想像) スケーリングなどの機能欲し いけど、Kubernetesの運用・ 管理は難しいなぁ
Container Appsの主要コンポーネント
Azure Container Apps Environment Container Apps Environment は、コンテナアプリの実行基盤。 1つ目のContainer Appsを作るときに、同時に作成される。
Environment と Container Appsは 1対多の関係 参考: https://learn.microsoft.com/ja-jp/azure/container-apps/environment
リビジョン コンテナイメージと設定のスナップショット。 Container Appsをデプロイしたら リビジョンが1つ、自動で作成される 以下のような更新・変更があれば、新し いリビジョンを作成する。 • コンテナイメージの更新 •
設定の変更 ◦ レプリカ(後述) ◦ 環境変数 ◦ スケーリング ◦ ボリューム ◦ etc…
レプリカ 実行されているコンテナの集まり。負荷に応じて、中で動くコンテナ数を増減させること ができる。 中で動くコンテナの最大値、最小値を設 定できる。 最小値を0に設定すると、コンテナ数は 0 個になる(負荷無いとき) ⇒コンテナ0個だと料金が発生しない
スケーリング 以下のスケールルールを設定できる • HTTPスケーリング • Azure キュー • カスタムプリセット ◦
CPU、メモリ使用率 ◦ Cron ◦ Azure Service Bus ◦ etc… スケーリングには KEDA を使っている。 KEDA がサポートしているスケーリングを使用できる。 KEDAはKubernetesベースのイベント駆動型オートスケーラーらしいです。(知らないので小声)
アプリのデプロイ
アプリをデプロイする流れ コンテナレジストリ Container Apps を作成 開発者 Push コンテナ イメージ Pull
試した構成図 フロントエンド バックエンド Container Apps Environment Subnet Virtual Network Container
Registry コンテナ イメージ Push ローカルで使ったDockerfileを そのままPushするだけだったので、 非常に楽だった。
気づき • Container Apps Environment 単体では作れない(左) Container Apps の作成画面で新規/既存環境を選択する(右) Container
Apps Environmentを 選択(作成)できる。 新規作成はメニューにない Azureポータルでは作れなかった。 Bicep なら単体で作れた。
まとめ • Azure Container Appsはフルマネージドのコンテナ実行基盤 • Kubernetesの運用・管理を自分でやらなくていい • ローカルで使うDockerfileをレジストリにPushするだけで、 アプリをデプロイできて楽だった。
• 動作確認レベルだと、レプリカの最小数を0個にしておけば、 料金が発生せず嬉しい。
尺が余ったときのために
リビジョン間のトラフィック分散 リビジョンが複数ある時、トラフィックを分散させることができる。 https://learn.microsoft.com/ja-jp/azure/container-apps/revisions
デプロイ方式への対応 Blue/Green デプロイ 100% 100% 100% 新しいリビジョンを作成 トラフィックを新しいリビ ジョンに切り替え
デプロイ方式への対応 カナリアデプロイ 100% 80% 80% 新しいリビジョンを作成。トラ フィックの一部を新リビジョン に向ける トラフィックの割合を増やし ていく
20% 20%