Microsoft.App containerApps 2024-02-02-preview

Bicep リソース定義

containerApps リソースの種類は、次を対象とする操作と共にデプロイできます。

  • リソース グループの - リソース グループのデプロイ コマンド 参照

各 API バージョンで変更されたプロパティの一覧については、変更ログの参照してください。

リソースの形式

Microsoft.App/containerApps リソースを作成するには、次の Bicep をテンプレートに追加します。

resource symbolicname 'Microsoft.App/containerApps@2024-02-02-preview' = {
  name: 'string'
  location: 'string'
  tags: {
    tagName1: 'tagValue1'
    tagName2: 'tagValue2'
  }
  kind: 'workflowapp'
  extendedLocation: {
    name: 'string'
    type: 'CustomLocation'
  }
  identity: {
    type: 'string'
    userAssignedIdentities: {
      {customized property}: {}
    }
  }
  managedBy: 'string'
  properties: {
    configuration: {
      activeRevisionsMode: 'string'
      dapr: {
        appId: 'string'
        appPort: int
        appProtocol: 'string'
        enableApiLogging: bool
        enabled: bool
        httpMaxRequestSize: int
        httpReadBufferSize: int
        logLevel: 'string'
      }
      identitySettings: [
        {
          identity: 'string'
          lifecycle: 'string'
        }
      ]
      ingress: {
        additionalPortMappings: [
          {
            exposedPort: int
            external: bool
            targetPort: int
          }
        ]
        allowInsecure: bool
        clientCertificateMode: 'string'
        corsPolicy: {
          allowCredentials: bool
          allowedHeaders: [
            'string'
          ]
          allowedMethods: [
            'string'
          ]
          allowedOrigins: [
            'string'
          ]
          exposeHeaders: [
            'string'
          ]
          maxAge: int
        }
        customDomains: [
          {
            bindingType: 'string'
            certificateId: 'string'
            name: 'string'
          }
        ]
        exposedPort: int
        external: bool
        ipSecurityRestrictions: [
          {
            action: 'string'
            description: 'string'
            ipAddressRange: 'string'
            name: 'string'
          }
        ]
        stickySessions: {
          affinity: 'string'
        }
        targetPort: int
        targetPortHttpScheme: 'string'
        traffic: [
          {
            label: 'string'
            latestRevision: bool
            revisionName: 'string'
            weight: int
          }
        ]
        transport: 'string'
      }
      maxInactiveRevisions: int
      registries: [
        {
          identity: 'string'
          passwordSecretRef: 'string'
          server: 'string'
          username: 'string'
        }
      ]
      runtime: {
        dotnet: {
          autoConfigureDataProtection: bool
        }
        java: {
          enableMetrics: bool
          javaAgent: {
            enabled: bool
            logging: {
              loggerSettings: [
                {
                  level: 'string'
                  logger: 'string'
                }
              ]
            }
          }
        }
      }
      secrets: [
        {
          identity: 'string'
          keyVaultUrl: 'string'
          name: 'string'
          value: 'string'
        }
      ]
      service: {
        type: 'string'
      }
    }
    environmentId: 'string'
    managedEnvironmentId: 'string'
    patchingConfiguration: {
      patchingMode: 'string'
    }
    template: {
      containers: [
        {
          args: [
            'string'
          ]
          command: [
            'string'
          ]
          env: [
            {
              name: 'string'
              secretRef: 'string'
              value: 'string'
            }
          ]
          image: 'string'
          imageType: 'string'
          name: 'string'
          probes: [
            {
              failureThreshold: int
              httpGet: {
                host: 'string'
                httpHeaders: [
                  {
                    name: 'string'
                    value: 'string'
                  }
                ]
                path: 'string'
                port: int
                scheme: 'string'
              }
              initialDelaySeconds: int
              periodSeconds: int
              successThreshold: int
              tcpSocket: {
                host: 'string'
                port: int
              }
              terminationGracePeriodSeconds: int
              timeoutSeconds: int
              type: 'string'
            }
          ]
          resources: {
            cpu: json('decimal-as-string')
            memory: 'string'
          }
          volumeMounts: [
            {
              mountPath: 'string'
              subPath: 'string'
              volumeName: 'string'
            }
          ]
        }
      ]
      initContainers: [
        {
          args: [
            'string'
          ]
          command: [
            'string'
          ]
          env: [
            {
              name: 'string'
              secretRef: 'string'
              value: 'string'
            }
          ]
          image: 'string'
          imageType: 'string'
          name: 'string'
          resources: {
            cpu: json('decimal-as-string')
            memory: 'string'
          }
          volumeMounts: [
            {
              mountPath: 'string'
              subPath: 'string'
              volumeName: 'string'
            }
          ]
        }
      ]
      revisionSuffix: 'string'
      scale: {
        maxReplicas: int
        minReplicas: int
        rules: [
          {
            azureQueue: {
              accountName: 'string'
              auth: [
                {
                  secretRef: 'string'
                  triggerParameter: 'string'
                }
              ]
              identity: 'string'
              queueLength: int
              queueName: 'string'
            }
            custom: {
              auth: [
                {
                  secretRef: 'string'
                  triggerParameter: 'string'
                }
              ]
              identity: 'string'
              metadata: {
                {customized property}: 'string'
              }
              type: 'string'
            }
            http: {
              auth: [
                {
                  secretRef: 'string'
                  triggerParameter: 'string'
                }
              ]
              identity: 'string'
              metadata: {
                {customized property}: 'string'
              }
            }
            name: 'string'
            tcp: {
              auth: [
                {
                  secretRef: 'string'
                  triggerParameter: 'string'
                }
              ]
              identity: 'string'
              metadata: {
                {customized property}: 'string'
              }
            }
          }
        ]
      }
      serviceBinds: [
        {
          clientType: 'string'
          customizedKeys: {
            {customized property}: 'string'
          }
          name: 'string'
          serviceId: 'string'
        }
      ]
      terminationGracePeriodSeconds: int
      volumes: [
        {
          mountOptions: 'string'
          name: 'string'
          secrets: [
            {
              path: 'string'
              secretRef: 'string'
            }
          ]
          storageName: 'string'
          storageType: 'string'
        }
      ]
    }
    workloadProfileName: 'string'
  }
}

プロパティ値

containerApps

名前 形容 価値
名前 リソース名 string (必須)

文字数制限: 2 から 32

有効な文字:
小文字、数字、ハイフン。.

文字で始まり、英数字で終わる。
場所 リソースが存在する地理的な場所 string (必須)
タグ リソース タグ。 タグ名と値のディクショナリ。 テンプレート の タグを参照してください
種類 同じ型のリソースに対して異なるエクスペリエンスをレンダリングするために使用されるメタデータ。たとえば、WorkflowApp は一種の Microsoft.App/ContainerApps 型です。 サポートされている場合、リソース プロバイダーはこの値を検証して保持する必要があります。 'workflowapp'
extendedLocation 拡張された場所の複合型。 ExtendedLocation の
同一性 コード内のシークレットや資格情報を維持することなく、他の Azure サービスと対話するための Container App のマネージド ID。 ManagedServiceIdentity の
managedBy このリソースを管理するリソースの完全修飾リソース ID。 このリソースが別の Azure リソースによって管理されているかどうかを示します。 これが存在する場合、完全モードのデプロイでは、別のリソースによって管理されているため、テンプレートから削除された場合、リソースは削除されません。
プロパティ ContainerApp リソース固有のプロパティ ContainerAppProperties

ExtendedLocation

名前 形容 価値
名前 拡張された場所の名前。
種類 拡張された場所の型。 'CustomLocation'

ManagedServiceIdentity

名前 形容 価値
種類 マネージド サービス ID の種類 (SystemAssigned 型と UserAssigned 型の両方が許可されます)。 'None'
'SystemAssigned'
'SystemAssigned,UserAssigned'
'UserAssigned' (必須)
userAssignedIdentities リソースに関連付けられているユーザー割り当て ID のセット。 userAssignedIdentities ディクショナリ キーは、'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName} という形式の ARM リソース ID になります。 ディクショナリ値は、要求内の空のオブジェクト ({}) にすることができます。 UserAssignedIdentities の

UserAssignedIdentities

名前 形容 価値
{カスタマイズされたプロパティ} UserAssignedIdentity の

UserAssignedIdentity

このオブジェクトには、配置時に設定するプロパティは含まれません。 すべてのプロパティは ReadOnly です。

ContainerAppProperties

名前 形容 価値
構成 バージョン管理されていない Container App 構成プロパティ。 構成
environmentId 環境のリソース ID。
managedEnvironmentId 廃止。 コンテナー アプリの環境のリソース ID。
patchingConfiguration コンテナー アプリの自動修正プログラムの構成。 ContainerAppPropertiesPatchingConfiguration
テンプレート コンテナー アプリのバージョン管理されたアプリケーション定義。 テンプレートの
workloadProfileName コンテナー アプリの実行にピン留めするワークロード プロファイル名。

構成

名前 形容 価値
activeRevisionsMode ActiveRevisionsMode は、コンテナー アプリのアクティブなリビジョンの処理方法を制御します。
{list}{item}複数: 複数のリビジョンをアクティブにすることができます。{/item}{item}単一: 一度にアクティブにできるリビジョンは 1 つだけです。 リビジョンの重みは、このモードでは使用できません。 値が指定されていない場合は、これが既定値です。{/item}{/list}
'Multiple'
'Single'
dapr コンテナー アプリの Dapr 構成。 Dapr
identitySettings コンテナー アプリに割り当てられているマネージド ID のオプション設定。 ここでマネージド ID が指定されていない場合は、既定の設定が使用されます。 IdentitySettings[]
イングレス イングレス構成。 イングレス
maxInactiveRevisions 随意。 コンテナー アプリで使用できる非アクティブなリビジョンの最大数。 int
レジストリ コンテナー アプリによって使用されるコンテナーのプライベート コンテナー レジストリ資格情報のコレクション RegistryCredentials[]
実行中 コンテナー アプリのアプリ ランタイム構成。 ランタイム
秘密 コンテナー アプリによって使用されるシークレットのコレクション シークレット[]
サービス コンテナー アプリを開発用 Container App Service にする サービス

Dapr

名前 形容 価値
appId Dapr アプリケーション識別子
appPort アプリケーションがリッスンしているポートを Dapr に通知します int
appProtocol アプリケーションが使用しているプロトコルを Dapr に通知します。 有効なオプションは http と grpc です。 既定値は http です 'grpc'
'http'
enableApiLogging Dapr サイドカーの API ログ記録を有効にします bool
有効 Dapr 側の車が有効かどうかを示すブール値 bool
httpMaxRequestSize 大きなファイルのアップロードを処理するために、要求本文 http および grpc サーバーパラメーターの最大サイズを MB 単位で増やします。 既定値は 4 MB です。 int
httpReadBufferSize マルチ KB ヘッダーを送信するときに処理する http ヘッダー読み取りバッファーの最大サイズ (KB 単位)。 既定値は 65 KB です。 int
logLevel Dapr サイドカーのログ レベルを設定します。 使用できる値は、デバッグ、情報、警告、エラーです。 既定値は info です。 'debug'
'error'
'info'
'warn'

IdentitySettings

名前 形容 価値
同一性 コンテナー アプリに割り当てられているユーザー割り当てマネージド ID のリソース ID。システム割り当て ID の場合は "system" です。 string (必須)
ライフサイクル マネージド ID を使用できるコンテナー アプリのライフサイクル ステージを選択するために使用します。 'All'
'Init'
'Main'
'None'

イングレス

名前 形容 価値
additionalPortMappings コンテナー アプリで追加のポートを公開するための設定 IngressPortMapping[]
allowInsecure HTTP 接続が許可されているかどうかを示すブール値。 false に設定されている場合、HTTPS 接続に自動的にリダイレクトされます bool
clientCertificateMode mTLS 認証のクライアント証明書モード。 無視は、転送時にサーバーがクライアント証明書を削除することを示します。 Accept は、サーバーがクライアント証明書を転送しますが、クライアント証明書は必要ないことを示します。 Require は、サーバーにクライアント証明書が必要であることを示します。 'accept'
'ignore'
'require'
corsPolicy コンテナー アプリの CORS ポリシー CorsPolicy の
customDomains Container Apps のホスト名のカスタム ドメイン バインド。 CustomDomain[]
exposedPort イングレスからの TCP トラフィック用のコンテナー内の公開ポート int
アプリが外部 http エンドポイントを公開するかどうかを示すブール値 bool
ipSecurityRestrictions 受信 IP アドレスを制限する規則。 IpSecurityRestrictionRule[]
stickySessions 単一リビジョン モードのスティッキー セッション IngressStickySessions の
targetPort イングレスからのトラフィックのコンテナー内のターゲット ポート int
targetPortHttpScheme http アプリが http または https でリッスンするかどうか 'http'
'https'
交通 アプリのリビジョンのトラフィックの重み付け TrafficWeight[]
輸送 イングレス トランスポート プロトコル 'auto'
'http'
'http2'
'tcp'

IngressPortMapping

名前 形容 価値
exposedPort ターゲット ポートの公開ポートを指定します。 指定しない場合は、既定でターゲット ポートに設定されます int
環境外でアプリ ポートにアクセスできるかどうかを指定します。 bool (必須)
targetPort ユーザーのコンテナーがリッスンするポートを指定します int (必須)

CorsPolicy

名前 形容 価値
allowCredentials リソースで資格情報を許可するかどうかを指定します bool
allowedHeaders access-control-allow-headers ヘッダーの内容を指定します string[]
allowedMethods access-control-allow-methods ヘッダーの内容を指定します string[]
allowedOrigins access-control-allow-origins ヘッダーのコンテンツを指定します string[] (必須)
exposeHeaders access-control-expose-headers ヘッダーのコンテンツを指定します string[]
maxAge access-control-max-age ヘッダーのコンテンツを指定します int

CustomDomain

名前 形容 価値
bindingType カスタム ドメイン バインドの種類。 'Disabled'
'SniEnabled'
certificateId このホスト名にバインドする証明書のリソース ID。 マネージド環境に存在する必要があります。
名前 ホスト名。 string (必須)

IpSecurityRestrictionRule

名前 形容 価値
アクション 受信 IP を決定する規則を許可または拒否します。 注: ルールは ALL Allow または ALL Deny のみで構成できます 'Allow'
'Deny' (必須)
形容 コンテナー アプリに送信される IP 制限規則について説明します。 これは省略可能なフィールドです。
ipAddressRange 受信 IP アドレスと一致する CIDR 表記 string (必須)
名前 IP 制限規則の名前。 string (必須)

IngressStickySessions

名前 形容 価値
親近感 スティッキー セッション アフィニティ 'none'
'sticky'

TrafficWeight

名前 形容 価値
ラベル トラフィック ラベルをリビジョンに関連付けます
latestRevision トラフィックの重みが最新の安定したリビジョンに属していることを示します bool
revisionName リビジョンの名前
重量 リビジョンに割り当てられたトラフィックの重み int

RegistryCredentials

名前 形容 価値
同一性 Azure Container Registry での認証に使用するマネージド ID。 ユーザー割り当て ID の場合は、完全なユーザー割り当て ID リソース ID を使用します。 システム割り当て ID の場合は、'system' を使用します
passwordSecretRef レジストリ ログイン パスワードを含むシークレットの名前
サーバー Container Registry Server
username Container Registry Username

実行中

名前 形容 価値
dotnet .NET アプリの構成 RuntimeDotnet
ジャワ Java アプリの構成 RuntimeJava

RuntimeDotnet

名前 形容 価値
autoConfigureDataProtection ASP.NET Core Data Protection 機能を自動構成する bool

RuntimeJava

名前 形容 価値
enableMetrics Java アプリの jmx コア メトリックを有効にする bool
javaAgent Java エージェントによって実現される診断機能 RuntimeJavaAgent

RuntimeJavaAgent

名前 形容 価値
有効 Java アプリの Java エージェントインジェクションを有効にします。 bool
伐採 Java ログ記録シナリオの機能。 RuntimeJavaAgentLogging

RuntimeJavaAgentLogging

名前 形容 価値
loggerSettings Java アプリのロガーの設定。 LoggerSetting[]

LoggerSetting

名前 形容 価値
レベル 指定したロガーのログ レベル。 'debug'
'error'
'info'
'off'
'trace'
'warn' (必須)
ロガー ロガー名。 string (必須)

秘密

名前 形容 価値
同一性 Azure Key Vault で認証するマネージド ID のリソース ID、またはシステム割り当て ID を使用するシステム。
keyVaultUrl コンテナー アプリによって参照されるシークレットを指す Azure Key Vault URL。
名前 シークレット名。
価値 シークレット値。

制約:
機密性の高い値。 セキュリティで保護されたパラメーターとして渡します。

サービス

名前 形容 価値
種類 Dev ContainerApp サービスの種類 string (必須)

ContainerAppPropertiesPatchingConfiguration

名前 形容 価値
patchingMode コンテナー アプリの修正プログラムの適用モード。 このフィールドの Null または既定値は、RP によって自動として解釈されます。 自動モードでは、使用可能なパッチが自動的に適用されます。 手動モードでは、ユーザーは手動でパッチを適用する必要があります。 無効モードでは、パッチの検出と自動修正が停止されます。 'Automatic'
'Disabled'
'Manual'

テンプレート

名前 形容 価値
コンテナー コンテナー アプリのコンテナー定義の一覧。 コンテナー[]
initContainers アプリ コンテナーの前に実行される特殊なコンテナーの一覧。 InitContainer[]
revisionSuffix リビジョン名に追加されるわかりやすいサフィックス
規模 コンテナー アプリのプロパティのスケーリング。 スケール
serviceBinds アプリにバインドされているコンテナー アプリ サービスの一覧 ServiceBind[]
terminationGracePeriodSeconds コンテナー アプリ インスタンスが正常に終了する必要がある時間 (秒単位)。 値は負以外の整数である必要があります。 値 0 は、強制終了信号を介して直ちに停止することを示します (シャットダウンする機会はありません)。 この値が nil の場合は、代わりに既定の猶予期間が使用されます。 この値は、プロセスの予想されるクリーンアップ時間よりも長く設定します。 既定値は 30 秒です。 int
ボリューム コンテナー アプリのボリューム定義の一覧。 ボリューム[]

コンテナ

名前 形容 価値
args コンテナーの開始コマンド引数。 string[]
命令 コンテナーの開始コマンド。 string[]
env コンテナー環境変数。 EnvironmentVar[]
画像 コンテナー イメージ タグ。
imageType イメージの種類。 CloudBuild に設定すると、イメージがシステムによって管理され、ユーザーはイメージ フィールドを介してイメージを更新できなくなります。 ユーザー指定のイメージの ContainerImage に設定します。 'CloudBuild'
'ContainerImage'
名前 カスタム コンテナー名。
プローブ コンテナーのプローブの一覧。 ContainerAppProbe[]
リソース コンテナー リソースの要件。 ContainerResources の
volumeMounts コンテナー ボリュームのマウント。 VolumeMount[]

EnvironmentVar

名前 形容 価値
名前 環境変数の名前。
secretRef 環境変数の値をプルするコンテナー アプリ シークレットの名前。
価値 シークレット以外の環境変数の値。

ContainerAppProbe

名前 形容 価値
failureThreshold 成功した後に失敗したと見なされるプローブの連続する最小障害。 既定値は 3 です。 最小値は 1 です。 最大値は 10 です。 int
httpGet HTTPGet は、実行する http 要求を指定します。 ContainerAppProbeHttpGet の
initialDelaySeconds コンテナーが起動してから、liveness プローブが開始されるまでの秒数。 最小値は 1 です。 最大値は 60 です。 int
periodSeconds プローブを実行する頻度 (秒単位)。 既定値は 10 秒です。 最小値は 1 です。 最大値は 240 です。 int
successThreshold 失敗した後にプローブが成功したと見なされる最小連続成功数。 既定値は 1 です。 ライブ性と起動には 1 にする必要があります。 最小値は 1 です。 最大値は 10 です。 int
tcpSocket TCPSocket は、TCP ポートに関連するアクションを指定します。 TCP フックはまだサポートされていません。 ContainerAppProbeTcpSocket の
terminationGracePeriodSeconds プローブの障害時にポッドを正常に終了する必要がある時間 (秒単位)。 猶予期間は、ポッドで実行されているプロセスが終了シグナルを送信してから数秒で、プロセスが強制終了シグナルで強制的に停止される時間です。 この値は、プロセスの予想されるクリーンアップ時間よりも長く設定します。 この値が nil の場合、ポッドの terminationGracePeriodSeconds が使用されます。 それ以外の場合、この値はポッド スペックによって提供される値をオーバーライドします。値は負以外の整数である必要があります。 値 0 は、強制終了信号を介して直ちに停止することを示します (シャットダウンする機会はありません)。 これはアルファ フィールドであり、ProbeTerminationGracePeriod 機能ゲートを有効にする必要があります。 最大値は 3600 秒 (1 時間) です。 int
timeoutSeconds プローブがタイムアウトする秒数。既定値は 1 秒です。 最小値は 1 です。 最大値は 240 です。 int
種類 プローブの種類。 'Liveness'
'Readiness'
'Startup'

ContainerAppProbeHttpGet

名前 形容 価値
ホスト 接続先のホスト名。既定ではポッド IP が使用されます。 代わりに httpHeaders で "Host" を設定することをお考えでしょう。
httpHeaders 要求で設定するカスタム ヘッダー。 HTTP では、ヘッダーを繰り返し使用できます。 ContainerAppProbeHttpGetHttpHeadersItem[]
パス HTTP サーバー上のアクセスのパス。
コンテナーでアクセスするポートの名前または番号。 数値は 1 ~ 65535 の範囲である必要があります。 名前はIANA_SVC_NAMEである必要があります。 int (必須)
計画 ホストへの接続に使用するスキーム。 既定値は HTTP です。 'HTTP'
'HTTPS'

ContainerAppProbeHttpGetHttpHeadersItem

名前 形容 価値
名前 ヘッダー フィールド名 string (必須)
価値 ヘッダー フィールドの値 string (必須)

ContainerAppProbeTcpSocket

名前 形容 価値
ホスト 省略可能: 接続先のホスト名。既定ではポッド IP が使用されます。
コンテナーでアクセスするポートの番号または名前。 数値は 1 ~ 65535 の範囲である必要があります。 名前はIANA_SVC_NAMEである必要があります。 int (必須)

ContainerResources

名前 形容 価値
cpu コアに必要な CPU (例: 0.5) 10 進値を指定するには、json() 関数を使用します。 int または json decimal
記憶 必要なメモリ (例: "250Mb" )

VolumeMount

名前 形容 価値
mountPath ボリュームをマウントするコンテナー内のパス。':' を含めてはなりません。
subPath コンテナーのボリュームをマウントするボリューム内のパス。 既定値は "" (ボリュームのルート) です。
volumeName これはボリュームの名前と一致する必要があります。

InitContainer

名前 形容 価値
args コンテナーの開始コマンド引数。 string[]
命令 コンテナーの開始コマンド。 string[]
env コンテナー環境変数。 EnvironmentVar[]
画像 コンテナー イメージ タグ。
imageType イメージの種類。 CloudBuild に設定すると、イメージがシステムによって管理され、ユーザーはイメージ フィールドを介してイメージを更新できなくなります。 ユーザー指定のイメージの ContainerImage に設定します。 'CloudBuild'
'ContainerImage'
名前 カスタム コンテナー名。
リソース コンテナー リソースの要件。 ContainerResources の
volumeMounts コンテナー ボリュームのマウント。 VolumeMount[]

規模

名前 形容 価値
maxReplicas 随意。 コンテナー レプリカの最大数。 既定値は 10 (設定されていない場合) です。 int
minReplicas 随意。 コンテナー レプリカの最小数。 int
準則 スケーリング ルール。 ScaleRule[]

ScaleRule

名前 形容 価値
azureQueue Azure Queue ベースのスケーリング。 QueueScaleRule の
習慣 カスタム スケール ルール。 CustomScaleRule の
http HTTP 要求ベースのスケーリング。 HttpScaleRule を する
名前 スケール ルール名
tcp Tcp 要求ベースのスケーリング。 TcpScaleRule の

QueueScaleRule

名前 形容 価値
accountName ストレージ アカウント名。 マネージド ID を使用して認証する場合は必須
認証 キュー スケール ルールの認証シークレット。 ScaleRuleAuth[]
同一性 コンテナー アプリに割り当てられているユーザー割り当てマネージド ID のリソース ID。システム割り当て ID の場合は "system" です。
queueLength キューの長さ。 int
queueName キュー名。

ScaleRuleAuth

名前 形容 価値
secretRef 認証パラメーターのプル元のシークレットの名前。
triggerParameter シークレットを使用するトリガー パラメーター

CustomScaleRule

名前 形容 価値
認証 カスタム スケール ルールの認証シークレット。 ScaleRuleAuth[]
同一性 コンテナー アプリに割り当てられているユーザー割り当てマネージド ID のリソース ID。システム割り当て ID の場合は "system" です。
metadata カスタム スケール ルールを記述するメタデータ プロパティ。 CustomScaleRuleMetadata を する
種類 カスタム スケール ルールの種類
例: azure-servicebus、redis など。

CustomScaleRuleMetadata

名前 形容 価値
{カスタマイズされたプロパティ}

HttpScaleRule

名前 形容 価値
認証 カスタム スケール ルールの認証シークレット。 ScaleRuleAuth[]
同一性 コンテナー アプリに割り当てられているユーザー割り当てマネージド ID のリソース ID。システム割り当て ID の場合は "system" です。
metadata http スケール ルールを記述するメタデータ プロパティ。 HttpScaleRuleMetadata を する

HttpScaleRuleMetadata

名前 形容 価値
{カスタマイズされたプロパティ}

TcpScaleRule

名前 形容 価値
認証 TCP スケール ルールの認証シークレット。 ScaleRuleAuth[]
同一性 コンテナー アプリに割り当てられているユーザー割り当てマネージド ID のリソース ID。システム割り当て ID の場合は "system" です。
metadata TCP スケール ルールを記述するメタデータ プロパティ。 TcpScaleRuleMetadata の

TcpScaleRuleMetadata

名前 形容 価値
{カスタマイズされたプロパティ}

ServiceBind

名前 形容 価値
clientType サービスへの接続に使用するクライアントの種類
customizedKeys 挿入された値をアプリにカスタマイズするためのカスタマイズされたキー ServiceBindCustomizedKeys
名前 サービス バインドの名前
serviceId ターゲット サービスのリソース ID

ServiceBindCustomizedKeys

名前 形容 価値
{カスタマイズされたプロパティ}

容積

名前 形容 価値
mountOptions Azure ファイル共有または NFS Azure ファイル共有のマウント時に使用されるマウント オプション。 コンマ区切りの文字列である必要があります。
名前 ボリューム名。
秘密 ボリュームに追加するシークレットの一覧。 シークレットが指定されていない場合、コレクション内のすべてのシークレットがボリュームに追加されます。 SecretVolumeItem[]
storageName ストレージ リソースの名前。 EmptyDir とシークレットを指定する必要はありません。
storageType ボリュームのストレージの種類。 指定しない場合は、EmptyDir を使用します。 'AzureFile'
'EmptyDir'
'NfsAzureFile'
'Secret'
'Smb'

SecretVolumeItem

名前 形容 価値
パス プロジェクト シークレットのパス。 パスが指定されていない場合、path は既定で secretRef にリストされているシークレットの名前になります。
secretRef シークレット値のプル元のコンテナー アプリ シークレットの名前。

クイック スタート テンプレート

次のクイック スタート テンプレートでは、このリソースの種類をデプロイします。

テンプレート 形容
レジストリ を使用してコンテナー アプリと環境を作成する

Azure にデプロイする
Azure Container Registry から基本的なコンテナー アプリを使用してコンテナー アプリ環境を作成します。 また、Log Analytics ワークスペースをデプロイしてログを格納します。
Container App Environment を使用して 2 つのコンテナー アプリを作成します

Azure にデプロイする
基本的なコンテナー アプリを使用して 2 つのコンテナー アプリ環境を作成します。 また、Log Analytics ワークスペースをデプロイしてログを格納します。
Container App Environment 内にコンテナー アプリを作成します

Azure にデプロイする
基本的なコンテナー アプリを使用してコンテナー アプリ環境を作成します。 また、Log Analytics ワークスペースをデプロイしてログを格納します。
定義された HTTP スケーリング ルールを使用してコンテナー アプリを作成

Azure にデプロイする
HTTP トラフィックに基づいてスケーリングする基本的なコンテナー アプリを使用して、コンテナー アプリ環境を作成します。
VNET を使用して外部コンテナー アプリ環境を作成する

Azure にデプロイする
VNET を使用して外部コンテナー アプリ環境を作成します。
VNET を使用して内部コンテナー アプリ環境を作成します

Azure にデプロイする
VNET を使用して内部コンテナー アプリ環境を作成します。

ARM テンプレート リソース定義

containerApps リソースの種類は、次を対象とする操作と共にデプロイできます。

  • リソース グループの - リソース グループのデプロイ コマンド 参照

各 API バージョンで変更されたプロパティの一覧については、変更ログの参照してください。

リソースの形式

Microsoft.App/containerApps リソースを作成するには、次の JSON をテンプレートに追加します。

{
  "type": "Microsoft.App/containerApps",
  "apiVersion": "2024-02-02-preview",
  "name": "string",
  "location": "string",
  "tags": {
    "tagName1": "tagValue1",
    "tagName2": "tagValue2"
  },
  "kind": "workflowapp",
  "extendedLocation": {
    "name": "string",
    "type": "CustomLocation"
  },
  "identity": {
    "type": "string",
    "userAssignedIdentities": {
      "{customized property}": {}
    }
  },
  "managedBy": "string",
  "properties": {
    "configuration": {
      "activeRevisionsMode": "string",
      "dapr": {
        "appId": "string",
        "appPort": "int",
        "appProtocol": "string",
        "enableApiLogging": "bool",
        "enabled": "bool",
        "httpMaxRequestSize": "int",
        "httpReadBufferSize": "int",
        "logLevel": "string"
      },
      "identitySettings": [
        {
          "identity": "string",
          "lifecycle": "string"
        }
      ],
      "ingress": {
        "additionalPortMappings": [
          {
            "exposedPort": "int",
            "external": "bool",
            "targetPort": "int"
          }
        ],
        "allowInsecure": "bool",
        "clientCertificateMode": "string",
        "corsPolicy": {
          "allowCredentials": "bool",
          "allowedHeaders": [ "string" ],
          "allowedMethods": [ "string" ],
          "allowedOrigins": [ "string" ],
          "exposeHeaders": [ "string" ],
          "maxAge": "int"
        },
        "customDomains": [
          {
            "bindingType": "string",
            "certificateId": "string",
            "name": "string"
          }
        ],
        "exposedPort": "int",
        "external": "bool",
        "ipSecurityRestrictions": [
          {
            "action": "string",
            "description": "string",
            "ipAddressRange": "string",
            "name": "string"
          }
        ],
        "stickySessions": {
          "affinity": "string"
        },
        "targetPort": "int",
        "targetPortHttpScheme": "string",
        "traffic": [
          {
            "label": "string",
            "latestRevision": "bool",
            "revisionName": "string",
            "weight": "int"
          }
        ],
        "transport": "string"
      },
      "maxInactiveRevisions": "int",
      "registries": [
        {
          "identity": "string",
          "passwordSecretRef": "string",
          "server": "string",
          "username": "string"
        }
      ],
      "runtime": {
        "dotnet": {
          "autoConfigureDataProtection": "bool"
        },
        "java": {
          "enableMetrics": "bool",
          "javaAgent": {
            "enabled": "bool",
            "logging": {
              "loggerSettings": [
                {
                  "level": "string",
                  "logger": "string"
                }
              ]
            }
          }
        }
      },
      "secrets": [
        {
          "identity": "string",
          "keyVaultUrl": "string",
          "name": "string",
          "value": "string"
        }
      ],
      "service": {
        "type": "string"
      }
    },
    "environmentId": "string",
    "managedEnvironmentId": "string",
    "patchingConfiguration": {
      "patchingMode": "string"
    },
    "template": {
      "containers": [
        {
          "args": [ "string" ],
          "command": [ "string" ],
          "env": [
            {
              "name": "string",
              "secretRef": "string",
              "value": "string"
            }
          ],
          "image": "string",
          "imageType": "string",
          "name": "string",
          "probes": [
            {
              "failureThreshold": "int",
              "httpGet": {
                "host": "string",
                "httpHeaders": [
                  {
                    "name": "string",
                    "value": "string"
                  }
                ],
                "path": "string",
                "port": "int",
                "scheme": "string"
              },
              "initialDelaySeconds": "int",
              "periodSeconds": "int",
              "successThreshold": "int",
              "tcpSocket": {
                "host": "string",
                "port": "int"
              },
              "terminationGracePeriodSeconds": "int",
              "timeoutSeconds": "int",
              "type": "string"
            }
          ],
          "resources": {
            "cpu": "[json('decimal-as-string')]",
            "memory": "string"
          },
          "volumeMounts": [
            {
              "mountPath": "string",
              "subPath": "string",
              "volumeName": "string"
            }
          ]
        }
      ],
      "initContainers": [
        {
          "args": [ "string" ],
          "command": [ "string" ],
          "env": [
            {
              "name": "string",
              "secretRef": "string",
              "value": "string"
            }
          ],
          "image": "string",
          "imageType": "string",
          "name": "string",
          "resources": {
            "cpu": "[json('decimal-as-string')]",
            "memory": "string"
          },
          "volumeMounts": [
            {
              "mountPath": "string",
              "subPath": "string",
              "volumeName": "string"
            }
          ]
        }
      ],
      "revisionSuffix": "string",
      "scale": {
        "maxReplicas": "int",
        "minReplicas": "int",
        "rules": [
          {
            "azureQueue": {
              "accountName": "string",
              "auth": [
                {
                  "secretRef": "string",
                  "triggerParameter": "string"
                }
              ],
              "identity": "string",
              "queueLength": "int",
              "queueName": "string"
            },
            "custom": {
              "auth": [
                {
                  "secretRef": "string",
                  "triggerParameter": "string"
                }
              ],
              "identity": "string",
              "metadata": {
                "{customized property}": "string"
              },
              "type": "string"
            },
            "http": {
              "auth": [
                {
                  "secretRef": "string",
                  "triggerParameter": "string"
                }
              ],
              "identity": "string",
              "metadata": {
                "{customized property}": "string"
              }
            },
            "name": "string",
            "tcp": {
              "auth": [
                {
                  "secretRef": "string",
                  "triggerParameter": "string"
                }
              ],
              "identity": "string",
              "metadata": {
                "{customized property}": "string"
              }
            }
          }
        ]
      },
      "serviceBinds": [
        {
          "clientType": "string",
          "customizedKeys": {
            "{customized property}": "string"
          },
          "name": "string",
          "serviceId": "string"
        }
      ],
      "terminationGracePeriodSeconds": "int",
      "volumes": [
        {
          "mountOptions": "string",
          "name": "string",
          "secrets": [
            {
              "path": "string",
              "secretRef": "string"
            }
          ],
          "storageName": "string",
          "storageType": "string"
        }
      ]
    },
    "workloadProfileName": "string"
  }
}

プロパティ値

containerApps

名前 形容 価値
種類 リソースの種類 'Microsoft.App/containerApps'
apiVersion リソース API のバージョン '2024-02-02-preview'
名前 リソース名 string (必須)

文字数制限: 2 から 32

有効な文字:
小文字、数字、ハイフン。.

文字で始まり、英数字で終わる。
場所 リソースが存在する地理的な場所 string (必須)
タグ リソース タグ。 タグ名と値のディクショナリ。 テンプレート の タグを参照してください
種類 同じ型のリソースに対して異なるエクスペリエンスをレンダリングするために使用されるメタデータ。たとえば、WorkflowApp は一種の Microsoft.App/ContainerApps 型です。 サポートされている場合、リソース プロバイダーはこの値を検証して保持する必要があります。 'workflowapp'
extendedLocation 拡張された場所の複合型。 ExtendedLocation の
同一性 コード内のシークレットや資格情報を維持することなく、他の Azure サービスと対話するための Container App のマネージド ID。 ManagedServiceIdentity の
managedBy このリソースを管理するリソースの完全修飾リソース ID。 このリソースが別の Azure リソースによって管理されているかどうかを示します。 これが存在する場合、完全モードのデプロイでは、別のリソースによって管理されているため、テンプレートから削除された場合、リソースは削除されません。
プロパティ ContainerApp リソース固有のプロパティ ContainerAppProperties

ExtendedLocation

名前 形容 価値
名前 拡張された場所の名前。
種類 拡張された場所の型。 'CustomLocation'

ManagedServiceIdentity

名前 形容 価値
種類 マネージド サービス ID の種類 (SystemAssigned 型と UserAssigned 型の両方が許可されます)。 'None'
'SystemAssigned'
'SystemAssigned,UserAssigned'
'UserAssigned' (必須)
userAssignedIdentities リソースに関連付けられているユーザー割り当て ID のセット。 userAssignedIdentities ディクショナリ キーは、'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName} という形式の ARM リソース ID になります。 ディクショナリ値は、要求内の空のオブジェクト ({}) にすることができます。 UserAssignedIdentities の

UserAssignedIdentities

名前 形容 価値
{カスタマイズされたプロパティ} UserAssignedIdentity の

UserAssignedIdentity

このオブジェクトには、配置時に設定するプロパティは含まれません。 すべてのプロパティは ReadOnly です。

ContainerAppProperties

名前 形容 価値
構成 バージョン管理されていない Container App 構成プロパティ。 構成
environmentId 環境のリソース ID。
managedEnvironmentId 廃止。 コンテナー アプリの環境のリソース ID。
patchingConfiguration コンテナー アプリの自動修正プログラムの構成。 ContainerAppPropertiesPatchingConfiguration
テンプレート コンテナー アプリのバージョン管理されたアプリケーション定義。 テンプレートの
workloadProfileName コンテナー アプリの実行にピン留めするワークロード プロファイル名。

構成

名前 形容 価値
activeRevisionsMode ActiveRevisionsMode は、コンテナー アプリのアクティブなリビジョンの処理方法を制御します。
{list}{item}複数: 複数のリビジョンをアクティブにすることができます。{/item}{item}単一: 一度にアクティブにできるリビジョンは 1 つだけです。 リビジョンの重みは、このモードでは使用できません。 値が指定されていない場合は、これが既定値です。{/item}{/list}
'Multiple'
'Single'
dapr コンテナー アプリの Dapr 構成。 Dapr
identitySettings コンテナー アプリに割り当てられているマネージド ID のオプション設定。 ここでマネージド ID が指定されていない場合は、既定の設定が使用されます。 IdentitySettings[]
イングレス イングレス構成。 イングレス
maxInactiveRevisions 随意。 コンテナー アプリで使用できる非アクティブなリビジョンの最大数。 int
レジストリ コンテナー アプリによって使用されるコンテナーのプライベート コンテナー レジストリ資格情報のコレクション RegistryCredentials[]
実行中 コンテナー アプリのアプリ ランタイム構成。 ランタイム
秘密 コンテナー アプリによって使用されるシークレットのコレクション シークレット[]
サービス コンテナー アプリを開発用 Container App Service にする サービス

Dapr

名前 形容 価値
appId Dapr アプリケーション識別子
appPort アプリケーションがリッスンしているポートを Dapr に通知します int
appProtocol アプリケーションが使用しているプロトコルを Dapr に通知します。 有効なオプションは http と grpc です。 既定値は http です 'grpc'
'http'
enableApiLogging Dapr サイドカーの API ログ記録を有効にします bool
有効 Dapr 側の車が有効かどうかを示すブール値 bool
httpMaxRequestSize 大きなファイルのアップロードを処理するために、要求本文 http および grpc サーバーパラメーターの最大サイズを MB 単位で増やします。 既定値は 4 MB です。 int
httpReadBufferSize マルチ KB ヘッダーを送信するときに処理する http ヘッダー読み取りバッファーの最大サイズ (KB 単位)。 既定値は 65 KB です。 int
logLevel Dapr サイドカーのログ レベルを設定します。 使用できる値は、デバッグ、情報、警告、エラーです。 既定値は info です。 'debug'
'error'
'info'
'warn'

IdentitySettings

名前 形容 価値
同一性 コンテナー アプリに割り当てられているユーザー割り当てマネージド ID のリソース ID。システム割り当て ID の場合は "system" です。 string (必須)
ライフサイクル マネージド ID を使用できるコンテナー アプリのライフサイクル ステージを選択するために使用します。 'All'
'Init'
'Main'
'None'

イングレス

名前 形容 価値
additionalPortMappings コンテナー アプリで追加のポートを公開するための設定 IngressPortMapping[]
allowInsecure HTTP 接続が許可されているかどうかを示すブール値。 false に設定されている場合、HTTPS 接続に自動的にリダイレクトされます bool
clientCertificateMode mTLS 認証のクライアント証明書モード。 無視は、転送時にサーバーがクライアント証明書を削除することを示します。 Accept は、サーバーがクライアント証明書を転送しますが、クライアント証明書は必要ないことを示します。 Require は、サーバーにクライアント証明書が必要であることを示します。 'accept'
'ignore'
'require'
corsPolicy コンテナー アプリの CORS ポリシー CorsPolicy の
customDomains Container Apps のホスト名のカスタム ドメイン バインド。 CustomDomain[]
exposedPort イングレスからの TCP トラフィック用のコンテナー内の公開ポート int
アプリが外部 http エンドポイントを公開するかどうかを示すブール値 bool
ipSecurityRestrictions 受信 IP アドレスを制限する規則。 IpSecurityRestrictionRule[]
stickySessions 単一リビジョン モードのスティッキー セッション IngressStickySessions の
targetPort イングレスからのトラフィックのコンテナー内のターゲット ポート int
targetPortHttpScheme http アプリが http または https でリッスンするかどうか 'http'
'https'
交通 アプリのリビジョンのトラフィックの重み付け TrafficWeight[]
輸送 イングレス トランスポート プロトコル 'auto'
'http'
'http2'
'tcp'

IngressPortMapping

名前 形容 価値
exposedPort ターゲット ポートの公開ポートを指定します。 指定しない場合は、既定でターゲット ポートに設定されます int
環境外でアプリ ポートにアクセスできるかどうかを指定します。 bool (必須)
targetPort ユーザーのコンテナーがリッスンするポートを指定します int (必須)

CorsPolicy

名前 形容 価値
allowCredentials リソースで資格情報を許可するかどうかを指定します bool
allowedHeaders access-control-allow-headers ヘッダーの内容を指定します string[]
allowedMethods access-control-allow-methods ヘッダーの内容を指定します string[]
allowedOrigins access-control-allow-origins ヘッダーのコンテンツを指定します string[] (必須)
exposeHeaders access-control-expose-headers ヘッダーのコンテンツを指定します string[]
maxAge access-control-max-age ヘッダーのコンテンツを指定します int

CustomDomain

名前 形容 価値
bindingType カスタム ドメイン バインドの種類。 'Disabled'
'SniEnabled'
certificateId このホスト名にバインドする証明書のリソース ID。 マネージド環境に存在する必要があります。
名前 ホスト名。 string (必須)

IpSecurityRestrictionRule

名前 形容 価値
アクション 受信 IP を決定する規則を許可または拒否します。 注: ルールは ALL Allow または ALL Deny のみで構成できます 'Allow'
'Deny' (必須)
形容 コンテナー アプリに送信される IP 制限規則について説明します。 これは省略可能なフィールドです。
ipAddressRange 受信 IP アドレスと一致する CIDR 表記 string (必須)
名前 IP 制限規則の名前。 string (必須)

IngressStickySessions

名前 形容 価値
親近感 スティッキー セッション アフィニティ 'none'
'sticky'

TrafficWeight

名前 形容 価値
ラベル トラフィック ラベルをリビジョンに関連付けます
latestRevision トラフィックの重みが最新の安定したリビジョンに属していることを示します bool
revisionName リビジョンの名前
重量 リビジョンに割り当てられたトラフィックの重み int

RegistryCredentials

名前 形容 価値
同一性 Azure Container Registry での認証に使用するマネージド ID。 ユーザー割り当て ID の場合は、完全なユーザー割り当て ID リソース ID を使用します。 システム割り当て ID の場合は、'system' を使用します
passwordSecretRef レジストリ ログイン パスワードを含むシークレットの名前
サーバー Container Registry Server
username Container Registry Username

実行中

名前 形容 価値
dotnet .NET アプリの構成 RuntimeDotnet
ジャワ Java アプリの構成 RuntimeJava

RuntimeDotnet

名前 形容 価値
autoConfigureDataProtection ASP.NET Core Data Protection 機能を自動構成する bool

RuntimeJava

名前 形容 価値
enableMetrics Java アプリの jmx コア メトリックを有効にする bool
javaAgent Java エージェントによって実現される診断機能 RuntimeJavaAgent

RuntimeJavaAgent

名前 形容 価値
有効 Java アプリの Java エージェントインジェクションを有効にします。 bool
伐採 Java ログ記録シナリオの機能。 RuntimeJavaAgentLogging

RuntimeJavaAgentLogging

名前 形容 価値
loggerSettings Java アプリのロガーの設定。 LoggerSetting[]

LoggerSetting

名前 形容 価値
レベル 指定したロガーのログ レベル。 'debug'
'error'
'info'
'off'
'trace'
'warn' (必須)
ロガー ロガー名。 string (必須)

秘密

名前 形容 価値
同一性 Azure Key Vault で認証するマネージド ID のリソース ID、またはシステム割り当て ID を使用するシステム。
keyVaultUrl コンテナー アプリによって参照されるシークレットを指す Azure Key Vault URL。
名前 シークレット名。
価値 シークレット値。

制約:
機密性の高い値。 セキュリティで保護されたパラメーターとして渡します。

サービス

名前 形容 価値
種類 Dev ContainerApp サービスの種類 string (必須)

ContainerAppPropertiesPatchingConfiguration

名前 形容 価値
patchingMode コンテナー アプリの修正プログラムの適用モード。 このフィールドの Null または既定値は、RP によって自動として解釈されます。 自動モードでは、使用可能なパッチが自動的に適用されます。 手動モードでは、ユーザーは手動でパッチを適用する必要があります。 無効モードでは、パッチの検出と自動修正が停止されます。 'Automatic'
'Disabled'
'Manual'

テンプレート

名前 形容 価値
コンテナー コンテナー アプリのコンテナー定義の一覧。 コンテナー[]
initContainers アプリ コンテナーの前に実行される特殊なコンテナーの一覧。 InitContainer[]
revisionSuffix リビジョン名に追加されるわかりやすいサフィックス
規模 コンテナー アプリのプロパティのスケーリング。 スケール
serviceBinds アプリにバインドされているコンテナー アプリ サービスの一覧 ServiceBind[]
terminationGracePeriodSeconds コンテナー アプリ インスタンスが正常に終了する必要がある時間 (秒単位)。 値は負以外の整数である必要があります。 値 0 は、強制終了信号を介して直ちに停止することを示します (シャットダウンする機会はありません)。 この値が nil の場合は、代わりに既定の猶予期間が使用されます。 この値は、プロセスの予想されるクリーンアップ時間よりも長く設定します。 既定値は 30 秒です。 int
ボリューム コンテナー アプリのボリューム定義の一覧。 ボリューム[]

コンテナ

名前 形容 価値
args コンテナーの開始コマンド引数。 string[]
命令 コンテナーの開始コマンド。 string[]
env コンテナー環境変数。 EnvironmentVar[]
画像 コンテナー イメージ タグ。
imageType イメージの種類。 CloudBuild に設定すると、イメージがシステムによって管理され、ユーザーはイメージ フィールドを介してイメージを更新できなくなります。 ユーザー指定のイメージの ContainerImage に設定します。 'CloudBuild'
'ContainerImage'
名前 カスタム コンテナー名。
プローブ コンテナーのプローブの一覧。 ContainerAppProbe[]
リソース コンテナー リソースの要件。 ContainerResources の
volumeMounts コンテナー ボリュームのマウント。 VolumeMount[]

EnvironmentVar

名前 形容 価値
名前 環境変数の名前。
secretRef 環境変数の値をプルするコンテナー アプリ シークレットの名前。
価値 シークレット以外の環境変数の値。

ContainerAppProbe

名前 形容 価値
failureThreshold 成功した後に失敗したと見なされるプローブの連続する最小障害。 既定値は 3 です。 最小値は 1 です。 最大値は 10 です。 int
httpGet HTTPGet は、実行する http 要求を指定します。 ContainerAppProbeHttpGet の
initialDelaySeconds コンテナーが起動してから、liveness プローブが開始されるまでの秒数。 最小値は 1 です。 最大値は 60 です。 int
periodSeconds プローブを実行する頻度 (秒単位)。 既定値は 10 秒です。 最小値は 1 です。 最大値は 240 です。 int
successThreshold 失敗した後にプローブが成功したと見なされる最小連続成功数。 既定値は 1 です。 ライブ性と起動には 1 にする必要があります。 最小値は 1 です。 最大値は 10 です。 int
tcpSocket TCPSocket は、TCP ポートに関連するアクションを指定します。 TCP フックはまだサポートされていません。 ContainerAppProbeTcpSocket の
terminationGracePeriodSeconds プローブの障害時にポッドを正常に終了する必要がある時間 (秒単位)。 猶予期間は、ポッドで実行されているプロセスが終了シグナルを送信してから数秒で、プロセスが強制終了シグナルで強制的に停止される時間です。 この値は、プロセスの予想されるクリーンアップ時間よりも長く設定します。 この値が nil の場合、ポッドの terminationGracePeriodSeconds が使用されます。 それ以外の場合、この値はポッド スペックによって提供される値をオーバーライドします。値は負以外の整数である必要があります。 値 0 は、強制終了信号を介して直ちに停止することを示します (シャットダウンする機会はありません)。 これはアルファ フィールドであり、ProbeTerminationGracePeriod 機能ゲートを有効にする必要があります。 最大値は 3600 秒 (1 時間) です。 int
timeoutSeconds プローブがタイムアウトする秒数。既定値は 1 秒です。 最小値は 1 です。 最大値は 240 です。 int
種類 プローブの種類。 'Liveness'
'Readiness'
'Startup'

ContainerAppProbeHttpGet

名前 形容 価値
ホスト 接続先のホスト名。既定ではポッド IP が使用されます。 代わりに httpHeaders で "Host" を設定することをお考えでしょう。
httpHeaders 要求で設定するカスタム ヘッダー。 HTTP では、ヘッダーを繰り返し使用できます。 ContainerAppProbeHttpGetHttpHeadersItem[]
パス HTTP サーバー上のアクセスのパス。
コンテナーでアクセスするポートの名前または番号。 数値は 1 ~ 65535 の範囲である必要があります。 名前はIANA_SVC_NAMEである必要があります。 int (必須)
計画 ホストへの接続に使用するスキーム。 既定値は HTTP です。 'HTTP'
'HTTPS'

ContainerAppProbeHttpGetHttpHeadersItem

名前 形容 価値
名前 ヘッダー フィールド名 string (必須)
価値 ヘッダー フィールドの値 string (必須)

ContainerAppProbeTcpSocket

名前 形容 価値
ホスト 省略可能: 接続先のホスト名。既定ではポッド IP が使用されます。
コンテナーでアクセスするポートの番号または名前。 数値は 1 ~ 65535 の範囲である必要があります。 名前はIANA_SVC_NAMEである必要があります。 int (必須)

ContainerResources

名前 形容 価値
cpu コアに必要な CPU (例: 0.5) 10 進値を指定するには、json() 関数を使用します。 int または json decimal
記憶 必要なメモリ (例: "250Mb" )

VolumeMount

名前 形容 価値
mountPath ボリュームをマウントするコンテナー内のパス。':' を含めてはなりません。
subPath コンテナーのボリュームをマウントするボリューム内のパス。 既定値は "" (ボリュームのルート) です。
volumeName これはボリュームの名前と一致する必要があります。

InitContainer

名前 形容 価値
args コンテナーの開始コマンド引数。 string[]
命令 コンテナーの開始コマンド。 string[]
env コンテナー環境変数。 EnvironmentVar[]
画像 コンテナー イメージ タグ。
imageType イメージの種類。 CloudBuild に設定すると、イメージがシステムによって管理され、ユーザーはイメージ フィールドを介してイメージを更新できなくなります。 ユーザー指定のイメージの ContainerImage に設定します。 'CloudBuild'
'ContainerImage'
名前 カスタム コンテナー名。
リソース コンテナー リソースの要件。 ContainerResources の
volumeMounts コンテナー ボリュームのマウント。 VolumeMount[]

規模

名前 形容 価値
maxReplicas 随意。 コンテナー レプリカの最大数。 既定値は 10 (設定されていない場合) です。 int
minReplicas 随意。 コンテナー レプリカの最小数。 int
準則 スケーリング ルール。 ScaleRule[]

ScaleRule

名前 形容 価値
azureQueue Azure Queue ベースのスケーリング。 QueueScaleRule の
習慣 カスタム スケール ルール。 CustomScaleRule の
http HTTP 要求ベースのスケーリング。 HttpScaleRule を する
名前 スケール ルール名
tcp Tcp 要求ベースのスケーリング。 TcpScaleRule の

QueueScaleRule

名前 形容 価値
accountName ストレージ アカウント名。 マネージド ID を使用して認証する場合は必須
認証 キュー スケール ルールの認証シークレット。 ScaleRuleAuth[]
同一性 コンテナー アプリに割り当てられているユーザー割り当てマネージド ID のリソース ID。システム割り当て ID の場合は "system" です。
queueLength キューの長さ。 int
queueName キュー名。

ScaleRuleAuth

名前 形容 価値
secretRef 認証パラメーターのプル元のシークレットの名前。
triggerParameter シークレットを使用するトリガー パラメーター

CustomScaleRule

名前 形容 価値
認証 カスタム スケール ルールの認証シークレット。 ScaleRuleAuth[]
同一性 コンテナー アプリに割り当てられているユーザー割り当てマネージド ID のリソース ID。システム割り当て ID の場合は "system" です。
metadata カスタム スケール ルールを記述するメタデータ プロパティ。 CustomScaleRuleMetadata を する
種類 カスタム スケール ルールの種類
例: azure-servicebus、redis など。

CustomScaleRuleMetadata

名前 形容 価値
{カスタマイズされたプロパティ}

HttpScaleRule

名前 形容 価値
認証 カスタム スケール ルールの認証シークレット。 ScaleRuleAuth[]
同一性 コンテナー アプリに割り当てられているユーザー割り当てマネージド ID のリソース ID。システム割り当て ID の場合は "system" です。
metadata http スケール ルールを記述するメタデータ プロパティ。 HttpScaleRuleMetadata を する

HttpScaleRuleMetadata

名前 形容 価値
{カスタマイズされたプロパティ}

TcpScaleRule

名前 形容 価値
認証 TCP スケール ルールの認証シークレット。 ScaleRuleAuth[]
同一性 コンテナー アプリに割り当てられているユーザー割り当てマネージド ID のリソース ID。システム割り当て ID の場合は "system" です。
metadata TCP スケール ルールを記述するメタデータ プロパティ。 TcpScaleRuleMetadata の

TcpScaleRuleMetadata

名前 形容 価値
{カスタマイズされたプロパティ}

ServiceBind

名前 形容 価値
clientType サービスへの接続に使用するクライアントの種類
customizedKeys 挿入された値をアプリにカスタマイズするためのカスタマイズされたキー ServiceBindCustomizedKeys
名前 サービス バインドの名前
serviceId ターゲット サービスのリソース ID

ServiceBindCustomizedKeys

名前 形容 価値
{カスタマイズされたプロパティ}

容積

名前 形容 価値
mountOptions Azure ファイル共有または NFS Azure ファイル共有のマウント時に使用されるマウント オプション。 コンマ区切りの文字列である必要があります。
名前 ボリューム名。
秘密 ボリュームに追加するシークレットの一覧。 シークレットが指定されていない場合、コレクション内のすべてのシークレットがボリュームに追加されます。 SecretVolumeItem[]
storageName ストレージ リソースの名前。 EmptyDir とシークレットを指定する必要はありません。
storageType ボリュームのストレージの種類。 指定しない場合は、EmptyDir を使用します。 'AzureFile'
'EmptyDir'
'NfsAzureFile'
'Secret'
'Smb'

SecretVolumeItem

名前 形容 価値
パス プロジェクト シークレットのパス。 パスが指定されていない場合、path は既定で secretRef にリストされているシークレットの名前になります。
secretRef シークレット値のプル元のコンテナー アプリ シークレットの名前。

クイック スタート テンプレート

次のクイック スタート テンプレートでは、このリソースの種類をデプロイします。

テンプレート 形容
レジストリ を使用してコンテナー アプリと環境を作成する

Azure にデプロイする
Azure Container Registry から基本的なコンテナー アプリを使用してコンテナー アプリ環境を作成します。 また、Log Analytics ワークスペースをデプロイしてログを格納します。
Container App Environment を使用して 2 つのコンテナー アプリを作成します

Azure にデプロイする
基本的なコンテナー アプリを使用して 2 つのコンテナー アプリ環境を作成します。 また、Log Analytics ワークスペースをデプロイしてログを格納します。
Container App Environment 内にコンテナー アプリを作成します

Azure にデプロイする
基本的なコンテナー アプリを使用してコンテナー アプリ環境を作成します。 また、Log Analytics ワークスペースをデプロイしてログを格納します。
定義された HTTP スケーリング ルールを使用してコンテナー アプリを作成

Azure にデプロイする
HTTP トラフィックに基づいてスケーリングする基本的なコンテナー アプリを使用して、コンテナー アプリ環境を作成します。
VNET を使用して外部コンテナー アプリ環境を作成する

Azure にデプロイする
VNET を使用して外部コンテナー アプリ環境を作成します。
VNET を使用して内部コンテナー アプリ環境を作成します

Azure にデプロイする
VNET を使用して内部コンテナー アプリ環境を作成します。

Terraform (AzAPI プロバイダー) リソース定義

containerApps リソースの種類は、次を対象とする操作と共にデプロイできます。

  • リソース グループの

各 API バージョンで変更されたプロパティの一覧については、変更ログの参照してください。

リソースの形式

Microsoft.App/containerApps リソースを作成するには、次の Terraform をテンプレートに追加します。

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.App/containerApps@2024-02-02-preview"
  name = "string"
  location = "string"
  parent_id = "string"
  tags = {
    tagName1 = "tagValue1"
    tagName2 = "tagValue2"
  }
  identity {
    type = "string"
    identity_ids = []
  }
  body = jsonencode({
    properties = {
      configuration = {
        activeRevisionsMode = "string"
        dapr = {
          appId = "string"
          appPort = int
          appProtocol = "string"
          enableApiLogging = bool
          enabled = bool
          httpMaxRequestSize = int
          httpReadBufferSize = int
          logLevel = "string"
        }
        identitySettings = [
          {
            identity = "string"
            lifecycle = "string"
          }
        ]
        ingress = {
          additionalPortMappings = [
            {
              exposedPort = int
              external = bool
              targetPort = int
            }
          ]
          allowInsecure = bool
          clientCertificateMode = "string"
          corsPolicy = {
            allowCredentials = bool
            allowedHeaders = [
              "string"
            ]
            allowedMethods = [
              "string"
            ]
            allowedOrigins = [
              "string"
            ]
            exposeHeaders = [
              "string"
            ]
            maxAge = int
          }
          customDomains = [
            {
              bindingType = "string"
              certificateId = "string"
              name = "string"
            }
          ]
          exposedPort = int
          external = bool
          ipSecurityRestrictions = [
            {
              action = "string"
              description = "string"
              ipAddressRange = "string"
              name = "string"
            }
          ]
          stickySessions = {
            affinity = "string"
          }
          targetPort = int
          targetPortHttpScheme = "string"
          traffic = [
            {
              label = "string"
              latestRevision = bool
              revisionName = "string"
              weight = int
            }
          ]
          transport = "string"
        }
        maxInactiveRevisions = int
        registries = [
          {
            identity = "string"
            passwordSecretRef = "string"
            server = "string"
            username = "string"
          }
        ]
        runtime = {
          dotnet = {
            autoConfigureDataProtection = bool
          }
          java = {
            enableMetrics = bool
            javaAgent = {
              enabled = bool
              logging = {
                loggerSettings = [
                  {
                    level = "string"
                    logger = "string"
                  }
                ]
              }
            }
          }
        }
        secrets = [
          {
            identity = "string"
            keyVaultUrl = "string"
            name = "string"
            value = "string"
          }
        ]
        service = {
          type = "string"
        }
      }
      environmentId = "string"
      managedEnvironmentId = "string"
      patchingConfiguration = {
        patchingMode = "string"
      }
      template = {
        containers = [
          {
            args = [
              "string"
            ]
            command = [
              "string"
            ]
            env = [
              {
                name = "string"
                secretRef = "string"
                value = "string"
              }
            ]
            image = "string"
            imageType = "string"
            name = "string"
            probes = [
              {
                failureThreshold = int
                httpGet = {
                  host = "string"
                  httpHeaders = [
                    {
                      name = "string"
                      value = "string"
                    }
                  ]
                  path = "string"
                  port = int
                  scheme = "string"
                }
                initialDelaySeconds = int
                periodSeconds = int
                successThreshold = int
                tcpSocket = {
                  host = "string"
                  port = int
                }
                terminationGracePeriodSeconds = int
                timeoutSeconds = int
                type = "string"
              }
            ]
            resources = {
              cpu = "decimal-as-string"
              memory = "string"
            }
            volumeMounts = [
              {
                mountPath = "string"
                subPath = "string"
                volumeName = "string"
              }
            ]
          }
        ]
        initContainers = [
          {
            args = [
              "string"
            ]
            command = [
              "string"
            ]
            env = [
              {
                name = "string"
                secretRef = "string"
                value = "string"
              }
            ]
            image = "string"
            imageType = "string"
            name = "string"
            resources = {
              cpu = "decimal-as-string"
              memory = "string"
            }
            volumeMounts = [
              {
                mountPath = "string"
                subPath = "string"
                volumeName = "string"
              }
            ]
          }
        ]
        revisionSuffix = "string"
        scale = {
          maxReplicas = int
          minReplicas = int
          rules = [
            {
              azureQueue = {
                accountName = "string"
                auth = [
                  {
                    secretRef = "string"
                    triggerParameter = "string"
                  }
                ]
                identity = "string"
                queueLength = int
                queueName = "string"
              }
              custom = {
                auth = [
                  {
                    secretRef = "string"
                    triggerParameter = "string"
                  }
                ]
                identity = "string"
                metadata = {
                  {customized property} = "string"
                }
                type = "string"
              }
              http = {
                auth = [
                  {
                    secretRef = "string"
                    triggerParameter = "string"
                  }
                ]
                identity = "string"
                metadata = {
                  {customized property} = "string"
                }
              }
              name = "string"
              tcp = {
                auth = [
                  {
                    secretRef = "string"
                    triggerParameter = "string"
                  }
                ]
                identity = "string"
                metadata = {
                  {customized property} = "string"
                }
              }
            }
          ]
        }
        serviceBinds = [
          {
            clientType = "string"
            customizedKeys = {
              {customized property} = "string"
            }
            name = "string"
            serviceId = "string"
          }
        ]
        terminationGracePeriodSeconds = int
        volumes = [
          {
            mountOptions = "string"
            name = "string"
            secrets = [
              {
                path = "string"
                secretRef = "string"
              }
            ]
            storageName = "string"
            storageType = "string"
          }
        ]
      }
      workloadProfileName = "string"
    }
    kind = "workflowapp"
    extendedLocation = {
      name = "string"
      type = "CustomLocation"
    }
    managedBy = "string"
  })
}

プロパティ値

containerApps

名前 形容 価値
種類 リソースの種類 "Microsoft.App/containerApps@2024-02-02-preview"
名前 リソース名 string (必須)

文字数制限: 2 から 32

有効な文字:
小文字、数字、ハイフン。.

文字で始まり、英数字で終わる。
場所 リソースが存在する地理的な場所 string (必須)
parent_id リソース グループにデプロイするには、そのリソース グループの ID を使用します。 string (必須)
タグ リソース タグ。 タグ名と値のディクショナリ。
種類 同じ型のリソースに対して異なるエクスペリエンスをレンダリングするために使用されるメタデータ。たとえば、WorkflowApp は一種の Microsoft.App/ContainerApps 型です。 サポートされている場合、リソース プロバイダーはこの値を検証して保持する必要があります。 "workflowapp"
extendedLocation 拡張された場所の複合型。 ExtendedLocation の
同一性 コード内のシークレットや資格情報を維持することなく、他の Azure サービスと対話するための Container App のマネージド ID。 ManagedServiceIdentity の
managedBy このリソースを管理するリソースの完全修飾リソース ID。 このリソースが別の Azure リソースによって管理されているかどうかを示します。 これが存在する場合、完全モードのデプロイでは、別のリソースによって管理されているため、テンプレートから削除された場合、リソースは削除されません。
プロパティ ContainerApp リソース固有のプロパティ ContainerAppProperties

ExtendedLocation

名前 形容 価値
名前 拡張された場所の名前。
種類 拡張された場所の型。 "CustomLocation"

ManagedServiceIdentity

名前 形容 価値
種類 マネージド サービス ID の種類 (SystemAssigned 型と UserAssigned 型の両方が許可されます)。 "SystemAssigned"
"SystemAssigned,UserAssigned"
"UserAssigned" (必須)
identity_ids リソースに関連付けられているユーザー割り当て ID のセット。 userAssignedIdentities ディクショナリ キーは、'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName} という形式の ARM リソース ID になります。 ディクショナリ値は、要求内の空のオブジェクト ({}) にすることができます。 ユーザー ID ID の配列。

UserAssignedIdentities

名前 形容 価値
{カスタマイズされたプロパティ} UserAssignedIdentity の

UserAssignedIdentity

このオブジェクトには、配置時に設定するプロパティは含まれません。 すべてのプロパティは ReadOnly です。

ContainerAppProperties

名前 形容 価値
構成 バージョン管理されていない Container App 構成プロパティ。 構成
environmentId 環境のリソース ID。
managedEnvironmentId 廃止。 コンテナー アプリの環境のリソース ID。
patchingConfiguration コンテナー アプリの自動修正プログラムの構成。 ContainerAppPropertiesPatchingConfiguration
テンプレート コンテナー アプリのバージョン管理されたアプリケーション定義。 テンプレートの
workloadProfileName コンテナー アプリの実行にピン留めするワークロード プロファイル名。

構成

名前 形容 価値
activeRevisionsMode ActiveRevisionsMode は、コンテナー アプリのアクティブなリビジョンの処理方法を制御します。
{list}{item}複数: 複数のリビジョンをアクティブにすることができます。{/item}{item}単一: 一度にアクティブにできるリビジョンは 1 つだけです。 リビジョンの重みは、このモードでは使用できません。 値が指定されていない場合は、これが既定値です。{/item}{/list}
"Multiple"
"Single"
dapr コンテナー アプリの Dapr 構成。 Dapr
identitySettings コンテナー アプリに割り当てられているマネージド ID のオプション設定。 ここでマネージド ID が指定されていない場合は、既定の設定が使用されます。 IdentitySettings[]
イングレス イングレス構成。 イングレス
maxInactiveRevisions 随意。 コンテナー アプリで使用できる非アクティブなリビジョンの最大数。 int
レジストリ コンテナー アプリによって使用されるコンテナーのプライベート コンテナー レジストリ資格情報のコレクション RegistryCredentials[]
実行中 コンテナー アプリのアプリ ランタイム構成。 ランタイム
秘密 コンテナー アプリによって使用されるシークレットのコレクション シークレット[]
サービス コンテナー アプリを開発用 Container App Service にする サービス

Dapr

名前 形容 価値
appId Dapr アプリケーション識別子
appPort アプリケーションがリッスンしているポートを Dapr に通知します int
appProtocol アプリケーションが使用しているプロトコルを Dapr に通知します。 有効なオプションは http と grpc です。 既定値は http です "grpc"
"http"
enableApiLogging Dapr サイドカーの API ログ記録を有効にします bool
有効 Dapr 側の車が有効かどうかを示すブール値 bool
httpMaxRequestSize 大きなファイルのアップロードを処理するために、要求本文 http および grpc サーバーパラメーターの最大サイズを MB 単位で増やします。 既定値は 4 MB です。 int
httpReadBufferSize マルチ KB ヘッダーを送信するときに処理する http ヘッダー読み取りバッファーの最大サイズ (KB 単位)。 既定値は 65 KB です。 int
logLevel Dapr サイドカーのログ レベルを設定します。 使用できる値は、デバッグ、情報、警告、エラーです。 既定値は info です。 "debug"
"error"
"info"
"warn"

IdentitySettings

名前 形容 価値
同一性 コンテナー アプリに割り当てられているユーザー割り当てマネージド ID のリソース ID。システム割り当て ID の場合は "system" です。 string (必須)
ライフサイクル マネージド ID を使用できるコンテナー アプリのライフサイクル ステージを選択するために使用します。 "すべて"
"Init"
"Main"
"なし"

イングレス

名前 形容 価値
additionalPortMappings コンテナー アプリで追加のポートを公開するための設定 IngressPortMapping[]
allowInsecure HTTP 接続が許可されているかどうかを示すブール値。 false に設定されている場合、HTTPS 接続に自動的にリダイレクトされます bool
clientCertificateMode mTLS 認証のクライアント証明書モード。 無視は、転送時にサーバーがクライアント証明書を削除することを示します。 Accept は、サーバーがクライアント証明書を転送しますが、クライアント証明書は必要ないことを示します。 Require は、サーバーにクライアント証明書が必要であることを示します。 "accept"
"ignore"
"require"
corsPolicy コンテナー アプリの CORS ポリシー CorsPolicy の
customDomains Container Apps のホスト名のカスタム ドメイン バインド。 CustomDomain[]
exposedPort イングレスからの TCP トラフィック用のコンテナー内の公開ポート int
アプリが外部 http エンドポイントを公開するかどうかを示すブール値 bool
ipSecurityRestrictions 受信 IP アドレスを制限する規則。 IpSecurityRestrictionRule[]
stickySessions 単一リビジョン モードのスティッキー セッション IngressStickySessions の
targetPort イングレスからのトラフィックのコンテナー内のターゲット ポート int
targetPortHttpScheme http アプリが http または https でリッスンするかどうか "http"
"https"
交通 アプリのリビジョンのトラフィックの重み付け TrafficWeight[]
輸送 イングレス トランスポート プロトコル "auto"
"http"
"http2"
"tcp"

IngressPortMapping

名前 形容 価値
exposedPort ターゲット ポートの公開ポートを指定します。 指定しない場合は、既定でターゲット ポートに設定されます int
環境外でアプリ ポートにアクセスできるかどうかを指定します。 bool (必須)
targetPort ユーザーのコンテナーがリッスンするポートを指定します int (必須)

CorsPolicy

名前 形容 価値
allowCredentials リソースで資格情報を許可するかどうかを指定します bool
allowedHeaders access-control-allow-headers ヘッダーの内容を指定します string[]
allowedMethods access-control-allow-methods ヘッダーの内容を指定します string[]
allowedOrigins access-control-allow-origins ヘッダーのコンテンツを指定します string[] (必須)
exposeHeaders access-control-expose-headers ヘッダーのコンテンツを指定します string[]
maxAge access-control-max-age ヘッダーのコンテンツを指定します int

CustomDomain

名前 形容 価値
bindingType カスタム ドメイン バインドの種類。 "無効"
"SniEnabled"
certificateId このホスト名にバインドする証明書のリソース ID。 マネージド環境に存在する必要があります。
名前 ホスト名。 string (必須)

IpSecurityRestrictionRule

名前 形容 価値
アクション 受信 IP を決定する規則を許可または拒否します。 注: ルールは ALL Allow または ALL Deny のみで構成できます "許可"
"拒否" (必須)
形容 コンテナー アプリに送信される IP 制限規則について説明します。 これは省略可能なフィールドです。
ipAddressRange 受信 IP アドレスと一致する CIDR 表記 string (必須)
名前 IP 制限規則の名前。 string (必須)

IngressStickySessions

名前 形容 価値
親近感 スティッキー セッション アフィニティ "none"
"sticky"

TrafficWeight

名前 形容 価値
ラベル トラフィック ラベルをリビジョンに関連付けます
latestRevision トラフィックの重みが最新の安定したリビジョンに属していることを示します bool
revisionName リビジョンの名前
重量 リビジョンに割り当てられたトラフィックの重み int

RegistryCredentials

名前 形容 価値
同一性 Azure Container Registry での認証に使用するマネージド ID。 ユーザー割り当て ID の場合は、完全なユーザー割り当て ID リソース ID を使用します。 システム割り当て ID の場合は、'system' を使用します
passwordSecretRef レジストリ ログイン パスワードを含むシークレットの名前
サーバー Container Registry Server
username Container Registry Username

実行中

名前 形容 価値
dotnet .NET アプリの構成 RuntimeDotnet
ジャワ Java アプリの構成 RuntimeJava

RuntimeDotnet

名前 形容 価値
autoConfigureDataProtection ASP.NET Core Data Protection 機能を自動構成する bool

RuntimeJava

名前 形容 価値
enableMetrics Java アプリの jmx コア メトリックを有効にする bool
javaAgent Java エージェントによって実現される診断機能 RuntimeJavaAgent

RuntimeJavaAgent

名前 形容 価値
有効 Java アプリの Java エージェントインジェクションを有効にします。 bool
伐採 Java ログ記録シナリオの機能。 RuntimeJavaAgentLogging

RuntimeJavaAgentLogging

名前 形容 価値
loggerSettings Java アプリのロガーの設定。 LoggerSetting[]

LoggerSetting

名前 形容 価値
レベル 指定したロガーのログ レベル。 "debug"
"error"
"info"
"off"
"trace"
"警告" (必須)
ロガー ロガー名。 string (必須)

秘密

名前 形容 価値
同一性 Azure Key Vault で認証するマネージド ID のリソース ID、またはシステム割り当て ID を使用するシステム。
keyVaultUrl コンテナー アプリによって参照されるシークレットを指す Azure Key Vault URL。
名前 シークレット名。
価値 シークレット値。

制約:
機密性の高い値。 セキュリティで保護されたパラメーターとして渡します。

サービス

名前 形容 価値
種類 Dev ContainerApp サービスの種類 string (必須)

ContainerAppPropertiesPatchingConfiguration

名前 形容 価値
patchingMode コンテナー アプリの修正プログラムの適用モード。 このフィールドの Null または既定値は、RP によって自動として解釈されます。 自動モードでは、使用可能なパッチが自動的に適用されます。 手動モードでは、ユーザーは手動でパッチを適用する必要があります。 無効モードでは、パッチの検出と自動修正が停止されます。 "自動"
"無効"
"Manual"

テンプレート

名前 形容 価値
コンテナー コンテナー アプリのコンテナー定義の一覧。 コンテナー[]
initContainers アプリ コンテナーの前に実行される特殊なコンテナーの一覧。 InitContainer[]
revisionSuffix リビジョン名に追加されるわかりやすいサフィックス
規模 コンテナー アプリのプロパティのスケーリング。 スケール
serviceBinds アプリにバインドされているコンテナー アプリ サービスの一覧 ServiceBind[]
terminationGracePeriodSeconds コンテナー アプリ インスタンスが正常に終了する必要がある時間 (秒単位)。 値は負以外の整数である必要があります。 値 0 は、強制終了信号を介して直ちに停止することを示します (シャットダウンする機会はありません)。 この値が nil の場合は、代わりに既定の猶予期間が使用されます。 この値は、プロセスの予想されるクリーンアップ時間よりも長く設定します。 既定値は 30 秒です。 int
ボリューム コンテナー アプリのボリューム定義の一覧。 ボリューム[]

コンテナ

名前 形容 価値
args コンテナーの開始コマンド引数。 string[]
命令 コンテナーの開始コマンド。 string[]
env コンテナー環境変数。 EnvironmentVar[]
画像 コンテナー イメージ タグ。
imageType イメージの種類。 CloudBuild に設定すると、イメージがシステムによって管理され、ユーザーはイメージ フィールドを介してイメージを更新できなくなります。 ユーザー指定のイメージの ContainerImage に設定します。 "CloudBuild"
"ContainerImage"
名前 カスタム コンテナー名。
プローブ コンテナーのプローブの一覧。 ContainerAppProbe[]
リソース コンテナー リソースの要件。 ContainerResources の
volumeMounts コンテナー ボリュームのマウント。 VolumeMount[]

EnvironmentVar

名前 形容 価値
名前 環境変数の名前。
secretRef 環境変数の値をプルするコンテナー アプリ シークレットの名前。
価値 シークレット以外の環境変数の値。

ContainerAppProbe

名前 形容 価値
failureThreshold 成功した後に失敗したと見なされるプローブの連続する最小障害。 既定値は 3 です。 最小値は 1 です。 最大値は 10 です。 int
httpGet HTTPGet は、実行する http 要求を指定します。 ContainerAppProbeHttpGet の
initialDelaySeconds コンテナーが起動してから、liveness プローブが開始されるまでの秒数。 最小値は 1 です。 最大値は 60 です。 int
periodSeconds プローブを実行する頻度 (秒単位)。 既定値は 10 秒です。 最小値は 1 です。 最大値は 240 です。 int
successThreshold 失敗した後にプローブが成功したと見なされる最小連続成功数。 既定値は 1 です。 ライブ性と起動には 1 にする必要があります。 最小値は 1 です。 最大値は 10 です。 int
tcpSocket TCPSocket は、TCP ポートに関連するアクションを指定します。 TCP フックはまだサポートされていません。 ContainerAppProbeTcpSocket の
terminationGracePeriodSeconds プローブの障害時にポッドを正常に終了する必要がある時間 (秒単位)。 猶予期間は、ポッドで実行されているプロセスが終了シグナルを送信してから数秒で、プロセスが強制終了シグナルで強制的に停止される時間です。 この値は、プロセスの予想されるクリーンアップ時間よりも長く設定します。 この値が nil の場合、ポッドの terminationGracePeriodSeconds が使用されます。 それ以外の場合、この値はポッド スペックによって提供される値をオーバーライドします。値は負以外の整数である必要があります。 値 0 は、強制終了信号を介して直ちに停止することを示します (シャットダウンする機会はありません)。 これはアルファ フィールドであり、ProbeTerminationGracePeriod 機能ゲートを有効にする必要があります。 最大値は 3600 秒 (1 時間) です。 int
timeoutSeconds プローブがタイムアウトする秒数。既定値は 1 秒です。 最小値は 1 です。 最大値は 240 です。 int
種類 プローブの種類。 "Liveness"
"準備"
"スタートアップ"

ContainerAppProbeHttpGet

名前 形容 価値
ホスト 接続先のホスト名。既定ではポッド IP が使用されます。 代わりに httpHeaders で "Host" を設定することをお考えでしょう。
httpHeaders 要求で設定するカスタム ヘッダー。 HTTP では、ヘッダーを繰り返し使用できます。 ContainerAppProbeHttpGetHttpHeadersItem[]
パス HTTP サーバー上のアクセスのパス。
コンテナーでアクセスするポートの名前または番号。 数値は 1 ~ 65535 の範囲である必要があります。 名前はIANA_SVC_NAMEである必要があります。 int (必須)
計画 ホストへの接続に使用するスキーム。 既定値は HTTP です。 "HTTP"
"HTTPS"

ContainerAppProbeHttpGetHttpHeadersItem

名前 形容 価値
名前 ヘッダー フィールド名 string (必須)
価値 ヘッダー フィールドの値 string (必須)

ContainerAppProbeTcpSocket

名前 形容 価値
ホスト 省略可能: 接続先のホスト名。既定ではポッド IP が使用されます。
コンテナーでアクセスするポートの番号または名前。 数値は 1 ~ 65535 の範囲である必要があります。 名前はIANA_SVC_NAMEである必要があります。 int (必須)

ContainerResources

名前 形容 価値
cpu コアで必要な CPU (例: 0.5) 10 進値を文字列として指定します。 int または json decimal
記憶 必要なメモリ (例: "250Mb" )

VolumeMount

名前 形容 価値
mountPath ボリュームをマウントするコンテナー内のパス。':' を含めてはなりません。
subPath コンテナーのボリュームをマウントするボリューム内のパス。 既定値は "" (ボリュームのルート) です。
volumeName これはボリュームの名前と一致する必要があります。

InitContainer

名前 形容 価値
args コンテナーの開始コマンド引数。 string[]
命令 コンテナーの開始コマンド。 string[]
env コンテナー環境変数。 EnvironmentVar[]
画像 コンテナー イメージ タグ。
imageType イメージの種類。 CloudBuild に設定すると、イメージがシステムによって管理され、ユーザーはイメージ フィールドを介してイメージを更新できなくなります。 ユーザー指定のイメージの ContainerImage に設定します。 "CloudBuild"
"ContainerImage"
名前 カスタム コンテナー名。
リソース コンテナー リソースの要件。 ContainerResources の
volumeMounts コンテナー ボリュームのマウント。 VolumeMount[]

規模

名前 形容 価値
maxReplicas 随意。 コンテナー レプリカの最大数。 既定値は 10 (設定されていない場合) です。 int
minReplicas 随意。 コンテナー レプリカの最小数。 int
準則 スケーリング ルール。 ScaleRule[]

ScaleRule

名前 形容 価値
azureQueue Azure Queue ベースのスケーリング。 QueueScaleRule の
習慣 カスタム スケール ルール。 CustomScaleRule の
http HTTP 要求ベースのスケーリング。 HttpScaleRule を する
名前 スケール ルール名
tcp Tcp 要求ベースのスケーリング。 TcpScaleRule の

QueueScaleRule

名前 形容 価値
accountName ストレージ アカウント名。 マネージド ID を使用して認証する場合は必須
認証 キュー スケール ルールの認証シークレット。 ScaleRuleAuth[]
同一性 コンテナー アプリに割り当てられているユーザー割り当てマネージド ID のリソース ID。システム割り当て ID の場合は "system" です。
queueLength キューの長さ。 int
queueName キュー名。

ScaleRuleAuth

名前 形容 価値
secretRef 認証パラメーターのプル元のシークレットの名前。
triggerParameter シークレットを使用するトリガー パラメーター

CustomScaleRule

名前 形容 価値
認証 カスタム スケール ルールの認証シークレット。 ScaleRuleAuth[]
同一性 コンテナー アプリに割り当てられているユーザー割り当てマネージド ID のリソース ID。システム割り当て ID の場合は "system" です。
metadata カスタム スケール ルールを記述するメタデータ プロパティ。 CustomScaleRuleMetadata を する
種類 カスタム スケール ルールの種類
例: azure-servicebus、redis など。

CustomScaleRuleMetadata

名前 形容 価値
{カスタマイズされたプロパティ}

HttpScaleRule

名前 形容 価値
認証 カスタム スケール ルールの認証シークレット。 ScaleRuleAuth[]
同一性 コンテナー アプリに割り当てられているユーザー割り当てマネージド ID のリソース ID。システム割り当て ID の場合は "system" です。
metadata http スケール ルールを記述するメタデータ プロパティ。 HttpScaleRuleMetadata を する

HttpScaleRuleMetadata

名前 形容 価値
{カスタマイズされたプロパティ}

TcpScaleRule

名前 形容 価値
認証 TCP スケール ルールの認証シークレット。 ScaleRuleAuth[]
同一性 コンテナー アプリに割り当てられているユーザー割り当てマネージド ID のリソース ID。システム割り当て ID の場合は "system" です。
metadata TCP スケール ルールを記述するメタデータ プロパティ。 TcpScaleRuleMetadata の

TcpScaleRuleMetadata

名前 形容 価値
{カスタマイズされたプロパティ}

ServiceBind

名前 形容 価値
clientType サービスへの接続に使用するクライアントの種類
customizedKeys 挿入された値をアプリにカスタマイズするためのカスタマイズされたキー ServiceBindCustomizedKeys
名前 サービス バインドの名前
serviceId ターゲット サービスのリソース ID

ServiceBindCustomizedKeys

名前 形容 価値
{カスタマイズされたプロパティ}

容積

名前 形容 価値
mountOptions Azure ファイル共有または NFS Azure ファイル共有のマウント時に使用されるマウント オプション。 コンマ区切りの文字列である必要があります。
名前 ボリューム名。
秘密 ボリュームに追加するシークレットの一覧。 シークレットが指定されていない場合、コレクション内のすべてのシークレットがボリュームに追加されます。 SecretVolumeItem[]
storageName ストレージ リソースの名前。 EmptyDir とシークレットを指定する必要はありません。
storageType ボリュームのストレージの種類。 指定しない場合は、EmptyDir を使用します。 "AzureFile"
"EmptyDir"
"NfsAzureFile"
"シークレット"
"Smb"

SecretVolumeItem

名前 形容 価値
パス プロジェクト シークレットのパス。 パスが指定されていない場合、path は既定で secretRef にリストされているシークレットの名前になります。
secretRef シークレット値のプル元のコンテナー アプリ シークレットの名前。