Azure Developer CLI (azd) テンプレート開発の概要

Azure Developer CLI (azd) テンプレートには、ソリューションをプロビジョニングして Azure にデプロイするために必要な構成、インフラストラクチャ、およびオプションのアプリケーション コードがパッケージ化されています。 アプリケーション、インフラストラクチャ専用プロジェクト、または将来のプロジェクトの再利用可能な開始点にテンプレートを使用できます。

Note

開始する前に、Azure Developer CLI テンプレートを参照して、テンプレート構造、必須およびオプションの資産、サービスとリソースの関連付け、および各ファイルのazdコマンドの使用方法について詳しく説明します。

テンプレート開発ワークフロー

テンプレートを作成するか、既に存在するものを初期化するかに関係なく、次のワークフローが適用されます。

azd テンプレート開発ワークフローの図。開始点の選択から azd up の実行、テンプレートの保守まで。

Azure Developer CLI テンプレート開発ワークフローの図。 左側の [開始点の選択] というラベルのボックスには、"新しいテンプレートから開始する" と "既存のテンプレートから開始する" の 2 つのオプションが含まれています。 どちらのオプションも、"テンプレート ファイルの探索と編集" につながります。 そこから、省略可能なパスが "テンプレートの拡張" になり、メイン パスは引き続き "azd up の実行" になります。 "テンプレートを拡張する" ステップでは、"azd up の実行" も行われます。 最後に、"azd up を実行する" と "テンプレートの管理または共有" が表示されます。

  • 開始点を選択する:GitHub Copilot統合、別の AI コーディング アシスタント、または直接作成を使用して新しいテンプレートを開始します。 または、Microsoft、組織、または開発者コミュニティから既存のテンプレートから開始します。
  • ファイルを調べて編集します。azure.yaml、Bicepまたは Terraform ファイル、アプリ コード、およびサポート構成がどのように連携するかを確認します。 テンプレート ファイルの探索と編集を参照してください。
  • 必要に応じて拡張および進化します。 アプリおよびインフラストラクチャ コンポーネントを追加、置換、削除、または再設計します。 Azure リソースを追加してアプリに接続するエンドツーエンドの例については、テンプレートの拡張を参照してください。
  • プロビジョニングとデプロイ:azd upを実行してインフラストラクチャをプロビジョニングし、任意のアプリ サービスをデプロイします。 詳細については、「azd up ワークフローを調べる」を参照してください。
  • 保守または共有: プロジェクトの進化に合わせてテンプレートの編集を続けます。 共有する予定の場合は、最初にクリーン なディレクトリと新しい azd 環境でテストします。

Note

このワークフロー全体を通して、テンプレート ファイルを自分で作成、編集、または置き換えたり、AI コーディング アシスタントの支援を得ることができます。 結果は、同じ標準の編集可能な azd アセットのセットになります。

テンプレートの構成要素

すべての azd テンプレートは異なるソリューションをサポートしますが、ほとんどのテンプレートは同じ種類のアセットを組み合わせています。

  • Project構成:azure.yaml ファイルは、project、デプロイ可能なサービス、ソース ディレクトリ、ホスティング ターゲット、オプションのフックまたはワークフローを識別します。
  • コードとしてのインフラストラクチャ: Bicepまたは Terraform ファイルは、ソリューションに必要なAzureリソース、ロールの割り当て、ネットワーク、アプリ設定を定義します。
  • アプリケーション ソース: テンプレートには、1 つ以上のデプロイ可能なアプリを含めることができます。または、インフラストラクチャのみを含めることができます。
  • 環境の構成: パラメーターは環境固有の値をデプロイに渡し、インフラストラクチャの出力はアクティブな azd 環境の値になります。

アプリのテンプレートでは、次のフォルダー構造を使用できます。

.
├── azure.yaml                # Project configuration
├── infra/                    # Infrastructure as code
│   ├── main.bicep
│   ├── main.parameters.json
│   └── modules/
├── src/                      # Application source
│   ├── api/
│   └── web/
├── .github/                  # Pipeline workflows
│   └── workflows/
└── README.md

正確な構造はプロジェクトによって異なります。 アプリ ソース、インフラストラクチャ モジュール、およびパイプライン ファイルは省略可能であり、 azure.yaml は、 azd が使用するパスを識別します。 これらの資産は、テンプレート開発ライフサイクル全体で連携します。

次のステップ

ヘルプを要求する

Azure Developer CLI のバグの報告、ヘルプの要求、または新機能の提案の方法については、トラブルシューティングとサポートページを参照してください。