Azure Developer CLI は、Azure リソースのデプロイとプロビジョニングを効率化する強力なテンプレート システムを中心に設計されています。 azd
を使用した開発時、独自のテンプレートを構築するか、既存のテンプレートの構成可能な一覧から選択することができます。 この記事では、テンプレート リストを操作し、さまざまなテンプレート リスト ソースをサポートするよう azd
のローカル インストールを構成する方法について説明します。
テンプレート ソースについて
azd
テンプレート ソースは、使用可能なテンプレートの一覧と、テンプレート ソース コードの名前、説明、場所 (通常は GitHub リポジトリ) などの重要なメタデータを記述する JSON 構成ファイルを指します。 テンプレート ソースを有効にすると、定義されるテンプレートは他のコマンドを通じて azd
で使用できるようになります。 たとえば、以下のテンプレート ソース JSON スニペットでは 2 つのテンプレートが定義されています。
[
{
"name": "Starter - Bicep",
"description": "A starter template with Bicep as infrastructure provider",
"repositoryPath": "azd-starter-bicep",
"tags": ["bicep"]
},
{
"name": "Starter - Terraform",
"description": "A starter template with Terraform as infrastructure provider",
"repositoryPath": "azd-starter-terraform",
"tags": ["terraform"]
}
]
JSON 構成ファイルの各テンプレート エントリには、次のプロパティが含まれています。
- 名: テンプレートの表示名。
- 説明: テンプレートの機能の簡単な概要。
- repositoryPath: テンプレートのソース コードへのパス。次の場合があります。
- "https://dev.azure.com/org/project/_git/repo" など、Git リポジトリへの完全修飾 URI。
- GitHub リポジトリの "{owner}/{repo}"。
- Azure-Samples 組織の GitHub リポジトリの "{repo}"。
- タグ: ユーザーが
azd init --filter <tag>
とazd template list --filter <tag>
でテンプレートをフィルター処理するのに役立つキーワード。
完全な例については、この JSON ファイル
azd
では、一度に複数のテンプレート ソースを有効にすることができます。 現在のところ、以下のテンプレート ソース オプションから選択できます。
- awesome-azd - 既定で有効になっている Awesome AZD ギャラリーのテンプレートの一覧。
- default - さまざまな技術スタックを示すためにキュレーションされたテンプレートの小さなセット。
- file - テンプレート ソース JSON 構成ファイルをポイントするローカル/ネットワーク パス。
- url - テンプレート ソース JSON 構成ファイルをポイントする HTTP(S) アドレス指定可能パス。
- gh - GitHub リポジトリを指します。
- ade - Azure Deployment Environments テンプレートの一覧をポイントします。 Azure Deployment Environments に対する Azure Developer CLI のサポートの詳細について説明します。
テンプレート ソースの操作
azd
には、テンプレート ソースを構成するためのコマンドがいくつか用意されています。
azd template source list
コマンドを使用して、現在構成されているすべてのテンプレート ソースを一覧表示します。
azd template source list
2 つの構成済みテンプレート ソースを含む出力例:
Key Name Type Location
awesome-azd Awesome AZD awesome-azd https://aka.ms/awesome-azd/templates.json
default Default resource
azd template source add
コマンドを使用して、新しいテンプレート ソースを追加します。 このコマンドでは、次のパラメーターを使用できます。
- key: テンプレート ソースの技術名。
- --type、-t: テンプレート ソースの種類 - GitHub の有効な値は、 file、 url および gh です。
- --location、-l: テンプレート ソースの場所。ローカル ネットワークまたは HTTP(S) Web URI にする必要があります。
- --name,-n: テンプレート ソースの表示名 (省略可能。省略した場合 キー を使用します)。
azd template source add <key> --type <file-or-url-or-gh> --location <your-uri> --name <your-display-name>
テンプレート ソースを削除するには、azd template source remove
コマンドを使用します。
azd template source remove <key>
azd config reset
コマンドを使用して、テンプレート構成を既定の設定にリセットします。
azd config reset
テンプレート リストの操作
テンプレート ソースを構成したら、azd template list
コマンドを使用して、これらのソースから使用可能なテンプレートを一覧表示します。
azd template list
たとえば、azd
の既定のインストールでは、awesome-azd テンプレート ソースから以下のテンプレートが一覧表示されます。
Name Source Repository Path
Event Driven Java Application with Azure Service Bus Awesome AZD Azure-Samples/ASA-Samples-Event-Driven-Application
Static React Web App with Java API and PostgreSQL Awesome AZD Azure-Samples/ASA-Samples-Web-Application
SAP CAP on Azure App Service Quickstart Awesome AZD Azure-Samples/app-service-javascript-sap-cap-quickstart
SAP Cloud SDK on Azure App Service Quickstart (TypeScript) Awesome AZD Azure-Samples/app-service-javascript-sap-cloud-sdk-quickstart
Java Spring Apps with Azure OpenAI Awesome AZD Azure-Samples/app-templates-java-openai-springapps
WordPress with Azure Container Apps Awesome AZD Azure-Samples/apptemplate-wordpress-on-ACA
Bicep template to bootstrap Azure Deployment Environments Awesome AZD Azure-Samples/azd-deployment-environments
Starter - Bicep Awesome AZD Azure-Samples/azd-starter-bicep
Starter - Terraform Awesome AZD Azure-Samples/azd-starter-terraform
...
# Additional templates omitted
特定のソースからのテンプレートのみを一覧表示する --source
フラグを含めます。
azd template list --source <source-name>
表示された一覧からテンプレートを初期化するには、azd init
コマンドを実行し、テンプレートのリポジトリ パスを指定します。
azd init --template <path-value>
Azure Deployment Environments の使用
Azure Developer CLI (azd
) では、Azure Deployment Environments のサポートも提供されます。 Azure Deployment Environments (ADE) は、定義済みのサブスクリプションにデプロイされた Azure リソースの事前構成済みのコレクションです。 Azure のガバナンスは、サンドボックス、テスト、ステージング、運用などの環境の種類に基づいて、それらのサブスクリプションに適用されます。 Azure Deployment Environments を使用すると、エンタープライズ セキュリティ ポリシーを適用し、事前定義済みのコードとしてのインフラストラクチャ (IaC) テンプレートのキュレーション済みのセットを提供できます。
ADE 統合については、この記事では扱いません。 ade
のサポートを構成する方法について詳しくは、Azure Deployment Environments の Azure Developer CLI サポートに関するドキュメントをご覧ください。