azure.yaml ファイルを更新する
テンプレートにはアプリのソース コードが含まれており、対応するインフラストラクチャを作成するための Bicep ファイルが定義されています。 ただし、テンプレートでは、アプリのソース コードと Azure リソースの関係を記述する必要があります。 azure.yaml
ファイルを使用すると、コード ベース内の 1 つ以上のアプリ サービスと、プロビジョニングされた Azure リソースにそれらをデプロイする方法を記述することができます。
プロジェクトのルートで、
azure.yaml
ファイルを見つけて開きます。 このファイルには、サービスの定義に役立つガイダンスとその方法を示す例が含まれています。 サービス定義により、標準化された YAML 構造を使用して、ソース コード内のフォルダーが Azure のリソースにマップされます。次の定義をコピーして、
azure.yaml
ファイルの下部に貼り付けます。services: web: language: csharp project: ./src/web host: appservice
このスキーマ例の各コード行では、アプリ内のサービスのさまざまな側面が説明されています。
- services - すべての
azure.yaml
ファイルでは、テンプレート内の 1 つ以上のサービスを一覧表示する 1 つの最上位services
ノードが定義されます。 - web - アプリコード内のサービスにマップする任意の名前 (
api
やworker
など)。 ただし、この名前は、Bicep または Terraform コードでリソースに割り当てたazd-service-name
タグの値と一致する必要があります。 たとえば、app.bicep
ファイル内の App Service 定義でtags: { 'azd-service-name': 'web' }
が指定されているため、このサービスの値はweb
になります。 このタグ名の関連付けにより、azd
は、指定されたコード ディレクトリをデプロイする必要がある Azure リソースを理解することができます。 - language - デプロイするコードの言語を指定するプロパティ。
azd
で現在サポートされている言語の値は、csharp
、python
、javascript
、java
です。 - project - サービスのコードが格納される場所へのパスを設定するプロパティ。
- host - アプリをデプロイする Azure サービスの種類を定義するプロパティ。
Note
もう一度、
azure.yaml
内のサービスの名前 (この場合は、web
) が、Bicep ファイルで定義されている対応するホスト リソースのazd-service-name
タグと一致することを確認してください。- services - すべての
azure.yaml
が完了すると、テンプレートの主要な構造コンポーネントがすべて配置されます。 次のユニットでは、テンプレート リソースをプロビジョニングして Azure にデプロイする方法について学習します。