公開日:2025年3月10日最終更新日: 2025年3月21日
コンテナはITシステムが持つインフラ管理の複雑さを緩和できる仕組みで、長い運用を見据えて開発現場でもよく採用されています。それに伴い、コンテナの稼働を前提に作られたインフラサービスも増えてきており、Webアプリケーションの構成の幅も広がっています。
今回ご紹介するのは、コンテナをベースとしたWebアプリケーションの実行環境を提供する「Azure Container Apps」です。コンテナに対する知識や経験が少なくても運用しやすい仕組みのため、これからコンテナを学び始める方もぜひ参考にしてみてください。
目次 <Contents>
Azure Container Appsとは

Azure Container Appsは、コンテナにまとめられたWebアプリケーションを動かすための実行環境を提供するインフラサービスです。コンテナの動作に必要なサーバーリソースやOS、ネットワーク、プログラム実行環境を用意することなく、Webアプリケーションを簡単に構築できます。
Webアプリケーションの稼働において求められる下記の機能が集約されており、運用経験の少ない担当者にも扱いやすくなっています。
- 処理負荷に応じてコンテナを増減させるオートスケール
- 外部公開のためのドメインの自動割り当てとHTTPS対応
- コンテナレジストリサービスを経由したコンテナ配置
- アップグレードのための複数バージョンの並行稼働
また、システム全体をコンテナに分割することは運用や開発における柔軟性を高めることにも繋がります。Azureが持つ信頼性や可用性の高いバックボーンを利用できるため、高負荷が想定されるWeb APIやイベント駆動型アプリケーションにも利用できるサービスです。
Azure Container Appsの特徴
Azure Container Appsの持つ特徴を2つ紹介していきます。
マイクロサービスの構築が容易
マイクロサービスは、システム全体を役割や機能に応じて小さな部品へと分割することで、拡張性や柔軟性を高めるシステム構成の1つです。
Azure Container Appsでは複数のWebアプリケーションを連携させた1つの大きなサービスを構築することが可能で、そのための支援機能も用意されています。特にDaprと呼ばれる仕組みを適用すると、APIを通じて対応する機能に簡単にアクセスできるようになります。対応する機能にはオープンソースの仕組みのほかAzureサービスも含まれており、例えば、コンテナ間のメッセージ配信にはAzure Service Bus、コンテナ状態管理にはSQL ServerやCosmos DBなどが利用可能です。
処理負荷に応じたオートスケーリングに対応
Azure Container Appsはコンテナのオートスケールに対応しており、最適なコストで運用できます。急なアクセス増加にはコンテナを並列に増やして負荷を分散し、アクセスが少ない場合には不要なコンテナを一旦取り外して無駄なコストを削減できます。
Azure Container Appsではアプリケーションの稼働状態に応じて料金が変動するため、使われていないサーバーリソースを減らしていくほどコストを抑えられます。コンテナの増減の引き金となるしきい値はユーザ側で決められるため、アプリケーションの規模やアクセス頻度に応じて調整が可能です。
Azure Container Appsを用いたアプリケーション構成例

Azure Container Appsでは、上図のように複数コンテナから構成される1つの大きなWebサービスを構築できます。中央のAzure Container Apps環境にあるように、コンテナーアプリと呼ばれる器にコンテナを配置し、内部の仮想ネットワークによってコンテナ間の通信を可能にしています。
Azure Container Appsを1つのアプリケーションサーバーとみなすことで、外部からのHTTPアクセスを許可したり、データベースや監視ツールなど他のAzureサービスと連携したりできます。
また、コンテナーアプリで分割する構成はコンテナごとの差し替えが容易になり、部分的な更新やスケーリングが行えるようになります。
このようにAzure Container Appsは、Webサービスのコンテナ化によるメリットが大きくなるケースで特に有効です。
Azure Container Appsの利用料金
Azure Container Appsの料金体系は稼働時間に応じて料金が発生する従量課金制です。サーバーリソースの使用量に対する料金は稼働状態によって異なります。
リソース使用量
アクティブ使用量
対象リソース | 価格 |
---|---|
vCPU | 0.0037203円/秒 |
メモリ | 0.0004651円/秒 |
アイドル状態の使用量
対象リソース | 価格 |
---|---|
vCPU | 0.0004651円/秒 |
メモリ | 0.0004651円/秒 |
リクエスト
対象 | 価格 |
---|---|
リクエスト件数 | 62.004円/100万件 |
また、毎月下記の使用量までは無料になります。
- vCPU:180,000秒
- メモリ:360,000GiB秒
- リクエスト件数:200万件
なお、上記の表は2025年2月時点の情報で、東日本リージョンでの料金を1ドル155.01円換算で算出しています。その他のプランや最新の料金についてはAzure公式サイトの価格ページをご参考ください。
Azure Container Appsの使い方
ここからはAzure Container Appsを使ったWebアプリケーションの構築方法を紹介していきます。なお、以降の手順では課金対象であるコンテナ環境を実際に作成していきますので、ご利用後は作成したリソースを速やかに削除しておきましょう。
コンテナベースのWebアプリケーションの作成
Azureポータルにログインし、サービス一覧の中から「コンテナ―アプリ」を選びましょう。

コンテナーアプリの画面に移るので、「作成」、「コンテナーアプリ」をクリックすると次の作成画面に進みます。

コンテナーアプリの作成画面では、次の項目を入力していきます。
- サブスクリプション
- リソースグループ:新規リソースグループの作成
- コンテナーアプリ名
- デプロイ元:コンテナーイメージ
- リージョン:Japan East
- Container Apps環境:新しい環境の作成

入力が終わったら「次へ:コンテナ―」をクリックし、「クイックスタートイメージを使用する」にチェックを入れて、「確認と作成」をクリックしましょう。

確認画面で「作成」をクリックすると、環境の作成処理が開始されますので、完了まで待ちましょう。
Webアプリケーションの動作確認
作成したコンテナ―アプリの画面を開き、「状態」が「実行中」になっていることを確認します。

続いて、「アプリケーションURL」をコピーしてブラウザで開いてみましょう。下記のような画面が表示されれば正常に動作しています。

今回はサンプルで用意されているコンテナイメージを使用しましたが、実際にはAzure Container Registryからの読み込みやDockerfileからビルドにより配置していきます。
まとめ
コンテナベースのWebアプリケーション構築に適したインフラサービスであるAzure Container Appsを解説しました。特にコンテナを中心としたマイクロサービスの構築において必要となるコンテナ管理を得意としています。
Kubernetesのような大規模向けのコンテナ管理と比べて細かな制御は行えませんが、Azure Container AppsはWebアプリケーションの運用に特化して機能が集約されています。そのため、コンテナの運用経験が少ない現場でも導入しやすいでしょう。