🐷
Azure環境にAppServiceを使ってデプロイする方法
自社のAzure上にコンテナアプリケーションをデプロイするまでの手順は以下の通りです。
-
Azure Container Registryの作成
- Azureポータルにログインし、新しいContainer Registryを作成します。
- SKUは必要に応じて選択します(Basic, Standard, Premium)。
- レジストリ名、サブスクリプション、リソースグループ、ロケーションを設定し、作成します。
-
コンテナイメージのビルドとプッシュ
- ローカル環境でDockerfileを用意し、コンテナイメージをビルドします。
docker build --tag <タグ名>:<バージョン> --platform linux/x86_64 .
- ビルドしたイメージにContainer Registryのタグを付けます。
docker tag <タグ名>:<バージョン> <ログインサーバー>/<タグ名>:<バージョン>
- Azure CLIでAzureにログインし、Container Registryにログインします。
az login az acr login --name <Container Registryのレジストリ名>
- タグ付けしたイメージをContainer Registryにプッシュします。
docker push <ログインサーバー>/<タグ名>:<バージョン>
- ローカル環境でDockerfileを用意し、コンテナイメージをビルドします。
-
Azure App Serviceの作成
- Azureポータルで新しいApp Serviceを作成します。
- 「公開」で「Dockerコンテナー」を選択します。
- 「Docker」セクションで、以下を設定します:
- イメージソース:Azure Container Registry
- レジストリ:先ほど作成したContainer Registry
- イメージ:プッシュしたリポジトリ名
- タグ:プッシュしたタグ名
- App Serviceの他の設定(名前、OS、地域、SKUなど)を必要に応じて行います。
- Container Registryの管理者ユーザーが有効化されていることを確認します。
-
Webhookの設定によるContinuous Delivery
- App Serviceの「デプロイセンター」から「継続的デプロイ」を「オン」にします。
- これにより、Container RegistryにWebhookが自動的に追加されます。
- Container RegistryのWebhooksにApp ServiceのWebhook URLが追加され、有効化されていることを確認します。
-
動作確認
- ローカルでコンテナイメージを更新し、Container Registryにプッシュします。
- App Serviceが自動的に再デプロイされ、最新のコンテナイメージが反映されることを確認します。
以上の手順により、自社のAzure環境でコンテナアプリケーションをデプロイし、Webhookを使ったシンプルなContinuous Deliveryを実現することができます。
Discussion