クイックスタート: ローカル ソース コードから Azure Container Apps へのビルドとデプロイを行う
この記事では、選択したプログラミング言語を使用して、ローカル ソース コードから Azure Container Apps へのマイクロサービスのビルドとデプロイを行う方法を示します。 音楽アルバムの静的コレクションを返すバックエンド Web API サービスを作成します。
次のスクリーンショットは、デプロイするアルバム APIサービス の出力を示しています。
前提条件
このプロジェクトを完了するには、次の項目が必要です:
要件 | 手順 |
---|---|
Azure アカウント | お持ちでない場合は、無料のアカウントを作成してください。 続行するには、Azure サブスクリプションの "共同作成者" または "所有者" のアクセス許可が必要です。 詳細については、「Azure portal を使用して Azure ロールを割り当てる」を参照してください。 |
Git | Git のインストール。 |
Azure CLI | Azure CLI をインストールします。 |
セットアップ
CLI から Azure にサインインするには、次のコマンドを実行し、プロンプトに従って認証プロセスを完了します。
az login
最新バージョンの CLI を実行していることを確認するには、upgrade コマンドを実行します。
az upgrade
次に、CLI 用の Azure Container Apps 拡張機能をインストールまたは更新します。
az extension add --name containerapp --upgrade --allow-preview true
最新の拡張機能がインストールされたので、Microsoft.App
と Microsoft.OperationalInsights
の名前空間を登録します。
az provider register --namespace Microsoft.App
az provider register --namespace Microsoft.OperationalInsights
環境変数を作成する
CLI のセットアップが完了したので、この記事全体で使用される環境変数を定義できます。
bash シェルで次の変数を定義します。
export RESOURCE_GROUP="album-containerapps"
export LOCATION="canadacentral"
export ENVIRONMENT="env-album-containerapps"
export API_NAME="album-api"
サンプル コードの入手
次のコマンドを実行して、お好きな言語でサンプル アプリケーションをクローンし、プロジェクトのソース フォルダーに移動します。
git clone https://github.com/azure-samples/containerapps-albumapi-csharp.git
cd containerapps-albumapi-csharp/src
コンテナーアプリ をビルドしてデプロイする
まず、次のコマンドを実行して、このクイックスタートで作成したリソースの追加先となるリソース グループを作成します。
az group create --name $RESOURCE_GROUP --location $LOCATION
containerapp up
コマンドを使用して、最初のコンテナー アプリをビルドしてデプロイします。 このコマンドは次の操作を行います:
- リソース グループの作成
- Azure Container Registry を作成する
- コンテナー イメージをビルドしてレジストリにプッシュする
- Container Apps 環境を Log Analytics ワークスペースと作成する
- ビルドされたコンテナー イメージを使用してコンテナー アプリを作成してデプロイする
up
コマンドは、プロジェクト フォルダーにある Dockerfile を使用してコンテナー イメージをビルドします。 Dockerfile 内の EXPOSE
命令によってターゲット ポートが定義されます。これは、イングレス トラフィックをコンテナーに送信するために使用されるポートになります。
次のコード例の .
(ドット) は、Dockerfile が含まれているプロジェクトの現在のディレクトリで実行するよう containerapp up
に指示します。
az containerapp up \
--name $API_NAME \
--resource-group $RESOURCE_GROUP \
--location $LOCATION \
--environment $ENVIRONMENT \
--source .
Note
コマンドが "AADSTS50158: 外部セキュリティ チャレンジに失敗しました" というメッセージと共にエラーを返した場合は、az login --scope https://graph.microsoft.com//.default
を実行して必要なアクセス許可でログインしてから、az containerapp up
コマンドをもう一度実行します。
デプロイの確認
az containerapp up
コマンドの出力からコンテナー アプリの URL を見つけます。 ブラウザーでその URL に移動します。 URL の末尾に /albums
を追加すると、API からの応答が表示されます。
制限
ソース コードをアップロードする場合の最大サイズは 200 MB です。 アップロードが制限を超えた場合は、エラー 413 が返されます。
リソースをクリーンアップする
フロントエンドのデプロイ に関するチュートリアルに進まない場合は、次のコマンドを使用して、このクイックスタートで作成した Azure リソースを削除できます。
注意事項
次のコマンドを実行すると、指定されたリソース グループとそれに含まれるすべてのリソースが削除されます。 グループがこのクイックスタートの範囲外でリソースを含む場合、それは同時に削除されます。
az group delete --name $RESOURCE_GROUP
ヒント
問題がある場合は、 GitHub の Azure Container Apps リポジトリでイシューを開いて、お知らせください。
次のステップ
このクイックスタートを完了したら、チュートリアル: Azure Container Apps でのマイクロサービス間の通信 に進み、API を呼び出すフロントエンド アプリケーションをデプロイする方法を学習できます。