次の方法で共有


Microsoft.App ジョブ 2023-05-02-preview

Bicep リソース定義

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

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

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

リソースの形式

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

resource symbolicname 'Microsoft.App/jobs@2023-05-02-preview' = {
  identity: {
    type: 'string'
    userAssignedIdentities: {
      {customized property}: {}
    }
  }
  location: 'string'
  name: 'string'
  properties: {
    configuration: {
      eventTriggerConfig: {
        parallelism: int
        replicaCompletionCount: int
        scale: {
          maxExecutions: int
          minExecutions: int
          pollingInterval: int
          rules: [
            {
              auth: [
                {
                  secretRef: 'string'
                  triggerParameter: 'string'
                }
              ]
              metadata: any(...)
              name: 'string'
              type: 'string'
            }
          ]
        }
      }
      manualTriggerConfig: {
        parallelism: int
        replicaCompletionCount: int
      }
      registries: [
        {
          identity: 'string'
          passwordSecretRef: 'string'
          server: 'string'
          username: 'string'
        }
      ]
      replicaRetryLimit: int
      replicaTimeout: int
      scheduleTriggerConfig: {
        cronExpression: 'string'
        parallelism: int
        replicaCompletionCount: int
      }
      secrets: [
        {
          identity: 'string'
          keyVaultUrl: 'string'
          name: 'string'
          value: 'string'
        }
      ]
      triggerType: 'string'
    }
    environmentId: 'string'
    template: {
      containers: [
        {
          args: [
            'string'
          ]
          command: [
            'string'
          ]
          env: [
            {
              name: 'string'
              secretRef: 'string'
              value: 'string'
            }
          ]
          image: '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: int
            memory: 'string'
          }
          volumeMounts: [
            {
              mountPath: 'string'
              subPath: 'string'
              volumeName: 'string'
            }
          ]
        }
      ]
      initContainers: [
        {
          args: [
            'string'
          ]
          command: [
            'string'
          ]
          env: [
            {
              name: 'string'
              secretRef: 'string'
              value: 'string'
            }
          ]
          image: 'string'
          name: 'string'
          resources: {
            cpu: int
            memory: 'string'
          }
          volumeMounts: [
            {
              mountPath: 'string'
              subPath: 'string'
              volumeName: 'string'
            }
          ]
        }
      ]
      volumes: [
        {
          mountOptions: 'string'
          name: 'string'
          secrets: [
            {
              path: 'string'
              secretRef: 'string'
            }
          ]
          storageName: 'string'
          storageType: 'string'
        }
      ]
    }
    workloadProfileName: 'string'
  }
  tags: {
    {customized property}: 'string'
  }
}

プロパティ値

Microsoft.App/jobs

名前 説明 価値
アイデンティティ コード内のシークレットや資格情報を保持しないように、他の Azure サービスと対話するためにコンテナー アプリ ジョブで必要なマネージド ID。 ManagedServiceIdentity の
ロケーション リソースが存在する地理的な場所 string (必須)
名前 リソース名

制約:
パターン = ^[-\w\._\(\)]+$ (必須)
プロパティ Container Apps ジョブリソース固有のプロパティ。 ジョブプロパティ
タグ リソース タグ タグ名と値のディクショナリ。 テンプレート の タグを参照してください

コンテナ

名前 説明 価値
引数 コンテナーの開始コマンド引数。 文字列[]
コマンド コンテナーの開始コマンド。 文字列[]
環境 コンテナー環境変数。 EnvironmentVar[]
画像 コンテナー イメージ タグ。 ひも
名前 カスタム コンテナー名。 ひも
プローブ コンテナーのプローブの一覧。 コンテナAppプローブ[]
リソース コンテナー リソースの要件。 ContainerResources の
ボリュームマウント コンテナー ボリュームのマウント。 ボリュームマウント[]

コンテナ・アプリケーション・プローブ

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

ContainerAppProbeHttpGet

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

ContainerAppProbeHttpGetHttpHeadersItem

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

ContainerAppProbeTcpSocket

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

コンテナリソース

名前 説明 価値
CPUの コアで必要な CPU (例: 0.5) 整数 (int)
記憶 必要なメモリ (例: "250Mb" ) ひも

EnvironmentVar (環境変数)

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

イニットコンテナ

名前 説明 価値
引数 コンテナーの開始コマンド引数。 文字列[]
コマンド コンテナーの開始コマンド。 文字列[]
環境 コンテナー環境変数。 EnvironmentVar[]
画像 コンテナー イメージ タグ。 ひも
名前 カスタム コンテナー名。 ひも
リソース コンテナー リソースの要件。 ContainerResources の
ボリュームマウント コンテナー ボリュームのマウント。 ボリュームマウント[]

ジョブ設定

名前 説明 価値
イベントトリガー設定 イベント ドリブン ジョブの構成をトリガーします。 ジョブ構成イベントトリガー構成
manualトリガー設定 1 つの実行ジョブの手動トリガー構成。 プロパティ replicaCompletionCount と並列処理は既定で 1 に設定されます ジョブ構成マニュアルトリガー構成
レジストリ コンテナー アプリ ジョブによって使用されるプライベート コンテナー レジストリ資格情報のコレクション レジストリ資格情報[]
replicaRetryLimit (レプリカ・リトライ・リミット) ジョブが失敗するまでの再試行の最大数。 整数 (int)
replicaTimeout (レプリカタイムアウト) レプリカの実行が許可される最大秒数。 int (必須)
scheduleTriggerConfigの Cron は cronjobs の繰り返しトリガー スケジュール ("* * * * *") を書式設定しました。 プロパティの入力候補と並列処理は既定で 1 に設定されます ジョブ構成スケジュールトリガー構成
秘密 Container Apps ジョブによって使用されるシークレットのコレクション シークレット[]
トリガータイプ ジョブのトリガーの種類 「イベント」
「マニュアル」
'Schedule' (必須)

ジョブ構成イベントトリガー構成

名前 説明 価値
並列性 特定の時刻に実行できるジョブの並列レプリカの数。 整数 (int)
レプリカ完了カウント 全体的なジョブの完了前の正常なレプリカの完了の最小数。 整数 (int)
規模 イベント ドリブン ジョブのスケーリング構成。 ジョブスケール

ジョブ構成マニュアルトリガー構成

名前 説明 価値
並列性 特定の時刻に実行できるジョブの並列レプリカの数。 整数 (int)
レプリカ完了カウント 全体的なジョブの完了前の正常なレプリカの完了の最小数。 整数 (int)

ジョブ構成スケジュールトリガー構成

名前 説明 価値
cronExpression(クロンエクスプレッション) Cron は Cron ジョブの繰り返しスケジュール ("* * * * *") を書式設定しました。 string (必須)
並列性 特定の時刻に実行できるジョブの並列レプリカの数。 整数 (int)
レプリカ完了カウント 全体的なジョブの完了前の正常なレプリカの完了の最小数。 整数 (int)

ジョブプロパティ

名前 説明 価値
設定 Container Apps ジョブの構成プロパティ。 ジョブ設定
環境ID 環境のリソース ID。 ひも
テンプレート Container Apps ジョブ定義。 ジョブテンプレート
ワークロードプロファイル名 コンテナー アプリジョブの実行にピン留めするワークロード プロファイル名。 ひも

ジョブスケール

名前 説明 価値
最大実行数 トリガーに対して作成されるジョブ実行の最大数 (既定値は 100)。 整数 (int)
minExecutions (最小実行数) トリガーに対して作成されるジョブ実行の最小数 (既定値は 0) 整数 (int)
ポーリング間隔 各イベント ソースを秒単位で確認する間隔。 既定値は 30 秒 整数 (int)
ルール スケーリング ルール。 ジョブスケールルール[]

ジョブスケールルール

名前 説明 価値
認証 スケール ルールの認証シークレット。 ScaleRuleAuth[]
メタデータ スケール ルールを記述するメタデータ プロパティ。 任意
名前 スケール ルール名 ひも
種類 スケール ルールの種類
例: azure-servicebus、redis など。
ひも

ジョブテンプレート

名前 説明 価値
コンテナー コンテナー アプリのコンテナー定義の一覧。 コンテナー[]
initコンテナ アプリ コンテナーの前に実行される特殊なコンテナーの一覧。 イニットコンテナ[]
ボリューム コンテナー アプリのボリューム定義の一覧。 ボリューム[]

マネージドサービスアイデンティティ

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

レジストリ資格情報

名前 説明 価値
アイデンティティ Azure Container Registry での認証に使用するマネージド ID。 ユーザー割り当て ID の場合は、完全なユーザー割り当て ID リソース ID を使用します。 システム割り当て ID の場合は、'system' を使用します ひも
passwordSecretRef レジストリ ログイン パスワードを含むシークレットの名前 ひも
サーバー コンテナレジストリサーバ ひも
ユーザー名 Container Registry のユーザー名 ひも

ScaleRuleAuth (英語)

名前 説明 価値
secretRef です。 認証パラメーターのプル元のシークレットの名前。 ひも
triggerパラメータ シークレットを使用するトリガー パラメーター ひも

秘密

名前 説明 価値
アイデンティティ Azure Key Vault で認証するマネージド ID のリソース ID、またはシステム割り当て ID を使用するシステム。 ひも
キー・ボールトURL コンテナー アプリによって参照されるシークレットを指す Azure Key Vault URL。 ひも
名前 シークレット名。 ひも
価値 シークレット値。

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

シークレットボリュームアイテム

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

追跡リソースタグ

名前 説明 価値

UserAssignedIdentities (ユーザー割り当てアイデンティティ)

名前 説明 価値

ユーザー割り当て識別子

名前 説明 価値

ボリューム

名前 説明 価値
mountOptions (マウントオプション) AzureFile のマウント中に使用されるマウント オプション。 コンマ区切りの文字列である必要があります。 ひも
名前 ボリューム名。 ひも
秘密 ボリュームに追加するシークレットの一覧。 シークレットが指定されていない場合、コレクション内のすべてのシークレットがボリュームに追加されます。 シークレットボリュームアイテム[]
ストレージ名 ストレージ リソースの名前。 EmptyDir とシークレットを指定する必要はありません。 ひも
ストレージタイプ ボリュームのストレージの種類。 指定しない場合は、EmptyDir を使用します。 「Azureファイル」
'EmptyDir'
「シークレット」

ボリュームマウント

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

使用例

Azure 検証済みモジュール

次の Azure 検証済みモジュール を使用して、このリソースの種類をデプロイできます。

モジュール 説明
アプリ ジョブ アプリ ジョブ用の AVM リソース モジュール

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

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

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

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

リソースの形式

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

{
  "type": "Microsoft.App/jobs",
  "apiVersion": "2023-05-02-preview",
  "name": "string",
  "identity": {
    "type": "string",
    "userAssignedIdentities": {
      "{customized property}": {
      }
    }
  },
  "location": "string",
  "properties": {
    "configuration": {
      "eventTriggerConfig": {
        "parallelism": "int",
        "replicaCompletionCount": "int",
        "scale": {
          "maxExecutions": "int",
          "minExecutions": "int",
          "pollingInterval": "int",
          "rules": [
            {
              "auth": [
                {
                  "secretRef": "string",
                  "triggerParameter": "string"
                }
              ],
              "metadata": {},
              "name": "string",
              "type": "string"
            }
          ]
        }
      },
      "manualTriggerConfig": {
        "parallelism": "int",
        "replicaCompletionCount": "int"
      },
      "registries": [
        {
          "identity": "string",
          "passwordSecretRef": "string",
          "server": "string",
          "username": "string"
        }
      ],
      "replicaRetryLimit": "int",
      "replicaTimeout": "int",
      "scheduleTriggerConfig": {
        "cronExpression": "string",
        "parallelism": "int",
        "replicaCompletionCount": "int"
      },
      "secrets": [
        {
          "identity": "string",
          "keyVaultUrl": "string",
          "name": "string",
          "value": "string"
        }
      ],
      "triggerType": "string"
    },
    "environmentId": "string",
    "template": {
      "containers": [
        {
          "args": [ "string" ],
          "command": [ "string" ],
          "env": [
            {
              "name": "string",
              "secretRef": "string",
              "value": "string"
            }
          ],
          "image": "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": "int",
            "memory": "string"
          },
          "volumeMounts": [
            {
              "mountPath": "string",
              "subPath": "string",
              "volumeName": "string"
            }
          ]
        }
      ],
      "initContainers": [
        {
          "args": [ "string" ],
          "command": [ "string" ],
          "env": [
            {
              "name": "string",
              "secretRef": "string",
              "value": "string"
            }
          ],
          "image": "string",
          "name": "string",
          "resources": {
            "cpu": "int",
            "memory": "string"
          },
          "volumeMounts": [
            {
              "mountPath": "string",
              "subPath": "string",
              "volumeName": "string"
            }
          ]
        }
      ],
      "volumes": [
        {
          "mountOptions": "string",
          "name": "string",
          "secrets": [
            {
              "path": "string",
              "secretRef": "string"
            }
          ],
          "storageName": "string",
          "storageType": "string"
        }
      ]
    },
    "workloadProfileName": "string"
  },
  "tags": {
    "{customized property}": "string"
  }
}

プロパティ値

Microsoft.App/jobs

名前 説明 価値
apiVersion (英語) API のバージョン 「2023-05-02-プレビュー」
アイデンティティ コード内のシークレットや資格情報を保持しないように、他の Azure サービスと対話するためにコンテナー アプリ ジョブで必要なマネージド ID。 ManagedServiceIdentity の
ロケーション リソースが存在する地理的な場所 string (必須)
名前 リソース名

制約:
パターン = ^[-\w\._\(\)]+$ (必須)
プロパティ Container Apps ジョブリソース固有のプロパティ。 ジョブプロパティ
タグ リソース タグ タグ名と値のディクショナリ。 テンプレート の タグを参照してください
種類 リソースの種類 「Microsoft.App/jobs」

コンテナ

名前 説明 価値
引数 コンテナーの開始コマンド引数。 文字列[]
コマンド コンテナーの開始コマンド。 文字列[]
環境 コンテナー環境変数。 EnvironmentVar[]
画像 コンテナー イメージ タグ。 ひも
名前 カスタム コンテナー名。 ひも
プローブ コンテナーのプローブの一覧。 コンテナAppプローブ[]
リソース コンテナー リソースの要件。 ContainerResources の
ボリュームマウント コンテナー ボリュームのマウント。 ボリュームマウント[]

コンテナ・アプリケーション・プローブ

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

ContainerAppProbeHttpGet

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

ContainerAppProbeHttpGetHttpHeadersItem

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

ContainerAppProbeTcpSocket

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

コンテナリソース

名前 説明 価値
CPUの コアで必要な CPU (例: 0.5) 整数 (int)
記憶 必要なメモリ (例: "250Mb" ) ひも

EnvironmentVar (環境変数)

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

イニットコンテナ

名前 説明 価値
引数 コンテナーの開始コマンド引数。 文字列[]
コマンド コンテナーの開始コマンド。 文字列[]
環境 コンテナー環境変数。 EnvironmentVar[]
画像 コンテナー イメージ タグ。 ひも
名前 カスタム コンテナー名。 ひも
リソース コンテナー リソースの要件。 ContainerResources の
ボリュームマウント コンテナー ボリュームのマウント。 ボリュームマウント[]

ジョブ設定

名前 説明 価値
イベントトリガー設定 イベント ドリブン ジョブの構成をトリガーします。 ジョブ構成イベントトリガー構成
manualトリガー設定 1 つの実行ジョブの手動トリガー構成。 プロパティ replicaCompletionCount と並列処理は既定で 1 に設定されます ジョブ構成マニュアルトリガー構成
レジストリ コンテナー アプリ ジョブによって使用されるプライベート コンテナー レジストリ資格情報のコレクション レジストリ資格情報[]
replicaRetryLimit (レプリカ・リトライ・リミット) ジョブが失敗するまでの再試行の最大数。 整数 (int)
replicaTimeout (レプリカタイムアウト) レプリカの実行が許可される最大秒数。 int (必須)
scheduleTriggerConfigの Cron は cronjobs の繰り返しトリガー スケジュール ("* * * * *") を書式設定しました。 プロパティの入力候補と並列処理は既定で 1 に設定されます ジョブ構成スケジュールトリガー構成
秘密 Container Apps ジョブによって使用されるシークレットのコレクション シークレット[]
トリガータイプ ジョブのトリガーの種類 「イベント」
「マニュアル」
'Schedule' (必須)

ジョブ構成イベントトリガー構成

名前 説明 価値
並列性 特定の時刻に実行できるジョブの並列レプリカの数。 整数 (int)
レプリカ完了カウント 全体的なジョブの完了前の正常なレプリカの完了の最小数。 整数 (int)
規模 イベント ドリブン ジョブのスケーリング構成。 ジョブスケール

ジョブ構成マニュアルトリガー構成

名前 説明 価値
並列性 特定の時刻に実行できるジョブの並列レプリカの数。 整数 (int)
レプリカ完了カウント 全体的なジョブの完了前の正常なレプリカの完了の最小数。 整数 (int)

ジョブ構成スケジュールトリガー構成

名前 説明 価値
cronExpression(クロンエクスプレッション) Cron は Cron ジョブの繰り返しスケジュール ("* * * * *") を書式設定しました。 string (必須)
並列性 特定の時刻に実行できるジョブの並列レプリカの数。 整数 (int)
レプリカ完了カウント 全体的なジョブの完了前の正常なレプリカの完了の最小数。 整数 (int)

ジョブプロパティ

名前 説明 価値
設定 Container Apps ジョブの構成プロパティ。 ジョブ設定
環境ID 環境のリソース ID。 ひも
テンプレート Container Apps ジョブ定義。 ジョブテンプレート
ワークロードプロファイル名 コンテナー アプリジョブの実行にピン留めするワークロード プロファイル名。 ひも

ジョブスケール

名前 説明 価値
最大実行数 トリガーに対して作成されるジョブ実行の最大数 (既定値は 100)。 整数 (int)
minExecutions (最小実行数) トリガーに対して作成されるジョブ実行の最小数 (既定値は 0) 整数 (int)
ポーリング間隔 各イベント ソースを秒単位で確認する間隔。 既定値は 30 秒 整数 (int)
ルール スケーリング ルール。 ジョブスケールルール[]

ジョブスケールルール

名前 説明 価値
認証 スケール ルールの認証シークレット。 ScaleRuleAuth[]
メタデータ スケール ルールを記述するメタデータ プロパティ。 任意
名前 スケール ルール名 ひも
種類 スケール ルールの種類
例: azure-servicebus、redis など。
ひも

ジョブテンプレート

名前 説明 価値
コンテナー コンテナー アプリのコンテナー定義の一覧。 コンテナー[]
initコンテナ アプリ コンテナーの前に実行される特殊なコンテナーの一覧。 イニットコンテナ[]
ボリューム コンテナー アプリのボリューム定義の一覧。 ボリューム[]

マネージドサービスアイデンティティ

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

レジストリ資格情報

名前 説明 価値
アイデンティティ Azure Container Registry での認証に使用するマネージド ID。 ユーザー割り当て ID の場合は、完全なユーザー割り当て ID リソース ID を使用します。 システム割り当て ID の場合は、'system' を使用します ひも
passwordSecretRef レジストリ ログイン パスワードを含むシークレットの名前 ひも
サーバー コンテナレジストリサーバ ひも
ユーザー名 Container Registry のユーザー名 ひも

ScaleRuleAuth (英語)

名前 説明 価値
secretRef です。 認証パラメーターのプル元のシークレットの名前。 ひも
triggerパラメータ シークレットを使用するトリガー パラメーター ひも

秘密

名前 説明 価値
アイデンティティ Azure Key Vault で認証するマネージド ID のリソース ID、またはシステム割り当て ID を使用するシステム。 ひも
キー・ボールトURL コンテナー アプリによって参照されるシークレットを指す Azure Key Vault URL。 ひも
名前 シークレット名。 ひも
価値 シークレット値。

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

シークレットボリュームアイテム

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

追跡リソースタグ

名前 説明 価値

UserAssignedIdentities (ユーザー割り当てアイデンティティ)

名前 説明 価値

ユーザー割り当て識別子

名前 説明 価値

ボリューム

名前 説明 価値
mountOptions (マウントオプション) AzureFile のマウント中に使用されるマウント オプション。 コンマ区切りの文字列である必要があります。 ひも
名前 ボリューム名。 ひも
秘密 ボリュームに追加するシークレットの一覧。 シークレットが指定されていない場合、コレクション内のすべてのシークレットがボリュームに追加されます。 シークレットボリュームアイテム[]
ストレージ名 ストレージ リソースの名前。 EmptyDir とシークレットを指定する必要はありません。 ひも
ストレージタイプ ボリュームのストレージの種類。 指定しない場合は、EmptyDir を使用します。 「Azureファイル」
'EmptyDir'
「シークレット」

ボリュームマウント

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

使用例

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

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

  • リソース グループ

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

リソースの形式

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

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.App/jobs@2023-05-02-preview"
  name = "string"
  parent_id = "string"
  identity {
    type = "string"
    identity_ids = [
      "string"
    ]
  }
  location = "string"
  tags = {
    {customized property} = "string"
  }
  body = {
    properties = {
      configuration = {
        eventTriggerConfig = {
          parallelism = int
          replicaCompletionCount = int
          scale = {
            maxExecutions = int
            minExecutions = int
            pollingInterval = int
            rules = [
              {
                auth = [
                  {
                    secretRef = "string"
                    triggerParameter = "string"
                  }
                ]
                metadata = ?
                name = "string"
                type = "string"
              }
            ]
          }
        }
        manualTriggerConfig = {
          parallelism = int
          replicaCompletionCount = int
        }
        registries = [
          {
            identity = "string"
            passwordSecretRef = "string"
            server = "string"
            username = "string"
          }
        ]
        replicaRetryLimit = int
        replicaTimeout = int
        scheduleTriggerConfig = {
          cronExpression = "string"
          parallelism = int
          replicaCompletionCount = int
        }
        secrets = [
          {
            identity = "string"
            keyVaultUrl = "string"
            name = "string"
            value = "string"
          }
        ]
        triggerType = "string"
      }
      environmentId = "string"
      template = {
        containers = [
          {
            args = [
              "string"
            ]
            command = [
              "string"
            ]
            env = [
              {
                name = "string"
                secretRef = "string"
                value = "string"
              }
            ]
            image = "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 = int
              memory = "string"
            }
            volumeMounts = [
              {
                mountPath = "string"
                subPath = "string"
                volumeName = "string"
              }
            ]
          }
        ]
        initContainers = [
          {
            args = [
              "string"
            ]
            command = [
              "string"
            ]
            env = [
              {
                name = "string"
                secretRef = "string"
                value = "string"
              }
            ]
            image = "string"
            name = "string"
            resources = {
              cpu = int
              memory = "string"
            }
            volumeMounts = [
              {
                mountPath = "string"
                subPath = "string"
                volumeName = "string"
              }
            ]
          }
        ]
        volumes = [
          {
            mountOptions = "string"
            name = "string"
            secrets = [
              {
                path = "string"
                secretRef = "string"
              }
            ]
            storageName = "string"
            storageType = "string"
          }
        ]
      }
      workloadProfileName = "string"
    }
  }
}

プロパティ値

Microsoft.App/jobs

名前 説明 価値
アイデンティティ コード内のシークレットや資格情報を保持しないように、他の Azure サービスと対話するためにコンテナー アプリ ジョブで必要なマネージド ID。 ManagedServiceIdentity の
ロケーション リソースが存在する地理的な場所 string (必須)
名前 リソース名

制約:
パターン = ^[-\w\._\(\)]+$ (必須)
プロパティ Container Apps ジョブリソース固有のプロパティ。 ジョブプロパティ
タグ リソース タグ タグ名と値のディクショナリ。
種類 リソースの種類 「Microsoft.App/jobs@2023-05-02-preview」

コンテナ

名前 説明 価値
引数 コンテナーの開始コマンド引数。 文字列[]
コマンド コンテナーの開始コマンド。 文字列[]
環境 コンテナー環境変数。 EnvironmentVar[]
画像 コンテナー イメージ タグ。 ひも
名前 カスタム コンテナー名。 ひも
プローブ コンテナーのプローブの一覧。 コンテナAppプローブ[]
リソース コンテナー リソースの要件。 ContainerResources の
ボリュームマウント コンテナー ボリュームのマウント。 ボリュームマウント[]

コンテナ・アプリケーション・プローブ

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

ContainerAppProbeHttpGet

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

ContainerAppProbeHttpGetHttpHeadersItem

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

ContainerAppProbeTcpSocket

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

コンテナリソース

名前 説明 価値
CPUの コアで必要な CPU (例: 0.5) 整数 (int)
記憶 必要なメモリ (例: "250Mb" ) ひも

EnvironmentVar (環境変数)

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

イニットコンテナ

名前 説明 価値
引数 コンテナーの開始コマンド引数。 文字列[]
コマンド コンテナーの開始コマンド。 文字列[]
環境 コンテナー環境変数。 EnvironmentVar[]
画像 コンテナー イメージ タグ。 ひも
名前 カスタム コンテナー名。 ひも
リソース コンテナー リソースの要件。 ContainerResources の
ボリュームマウント コンテナー ボリュームのマウント。 ボリュームマウント[]

ジョブ設定

名前 説明 価値
イベントトリガー設定 イベント ドリブン ジョブの構成をトリガーします。 ジョブ構成イベントトリガー構成
manualトリガー設定 1 つの実行ジョブの手動トリガー構成。 プロパティ replicaCompletionCount と並列処理は既定で 1 に設定されます ジョブ構成マニュアルトリガー構成
レジストリ コンテナー アプリ ジョブによって使用されるプライベート コンテナー レジストリ資格情報のコレクション レジストリ資格情報[]
replicaRetryLimit (レプリカ・リトライ・リミット) ジョブが失敗するまでの再試行の最大数。 整数 (int)
replicaTimeout (レプリカタイムアウト) レプリカの実行が許可される最大秒数。 int (必須)
scheduleTriggerConfigの Cron は cronjobs の繰り返しトリガー スケジュール ("* * * * *") を書式設定しました。 プロパティの入力候補と並列処理は既定で 1 に設定されます ジョブ構成スケジュールトリガー構成
秘密 Container Apps ジョブによって使用されるシークレットのコレクション シークレット[]
トリガータイプ ジョブのトリガーの種類 「イベント」
「マニュアル」
'Schedule' (必須)

ジョブ構成イベントトリガー構成

名前 説明 価値
並列性 特定の時刻に実行できるジョブの並列レプリカの数。 整数 (int)
レプリカ完了カウント 全体的なジョブの完了前の正常なレプリカの完了の最小数。 整数 (int)
規模 イベント ドリブン ジョブのスケーリング構成。 ジョブスケール

ジョブ構成マニュアルトリガー構成

名前 説明 価値
並列性 特定の時刻に実行できるジョブの並列レプリカの数。 整数 (int)
レプリカ完了カウント 全体的なジョブの完了前の正常なレプリカの完了の最小数。 整数 (int)

ジョブ構成スケジュールトリガー構成

名前 説明 価値
cronExpression(クロンエクスプレッション) Cron は Cron ジョブの繰り返しスケジュール ("* * * * *") を書式設定しました。 string (必須)
並列性 特定の時刻に実行できるジョブの並列レプリカの数。 整数 (int)
レプリカ完了カウント 全体的なジョブの完了前の正常なレプリカの完了の最小数。 整数 (int)

ジョブプロパティ

名前 説明 価値
設定 Container Apps ジョブの構成プロパティ。 ジョブ設定
環境ID 環境のリソース ID。 ひも
テンプレート Container Apps ジョブ定義。 ジョブテンプレート
ワークロードプロファイル名 コンテナー アプリジョブの実行にピン留めするワークロード プロファイル名。 ひも

ジョブスケール

名前 説明 価値
最大実行数 トリガーに対して作成されるジョブ実行の最大数 (既定値は 100)。 整数 (int)
minExecutions (最小実行数) トリガーに対して作成されるジョブ実行の最小数 (既定値は 0) 整数 (int)
ポーリング間隔 各イベント ソースを秒単位で確認する間隔。 既定値は 30 秒 整数 (int)
ルール スケーリング ルール。 ジョブスケールルール[]

ジョブスケールルール

名前 説明 価値
認証 スケール ルールの認証シークレット。 ScaleRuleAuth[]
メタデータ スケール ルールを記述するメタデータ プロパティ。 任意
名前 スケール ルール名 ひも
種類 スケール ルールの種類
例: azure-servicebus、redis など。
ひも

ジョブテンプレート

名前 説明 価値
コンテナー コンテナー アプリのコンテナー定義の一覧。 コンテナー[]
initコンテナ アプリ コンテナーの前に実行される特殊なコンテナーの一覧。 イニットコンテナ[]
ボリューム コンテナー アプリのボリューム定義の一覧。 ボリューム[]

マネージドサービスアイデンティティ

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

レジストリ資格情報

名前 説明 価値
アイデンティティ Azure Container Registry での認証に使用するマネージド ID。 ユーザー割り当て ID の場合は、完全なユーザー割り当て ID リソース ID を使用します。 システム割り当て ID の場合は、'system' を使用します ひも
passwordSecretRef レジストリ ログイン パスワードを含むシークレットの名前 ひも
サーバー コンテナレジストリサーバ ひも
ユーザー名 Container Registry のユーザー名 ひも

ScaleRuleAuth (英語)

名前 説明 価値
secretRef です。 認証パラメーターのプル元のシークレットの名前。 ひも
triggerパラメータ シークレットを使用するトリガー パラメーター ひも

秘密

名前 説明 価値
アイデンティティ Azure Key Vault で認証するマネージド ID のリソース ID、またはシステム割り当て ID を使用するシステム。 ひも
キー・ボールトURL コンテナー アプリによって参照されるシークレットを指す Azure Key Vault URL。 ひも
名前 シークレット名。 ひも
価値 シークレット値。

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

シークレットボリュームアイテム

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

追跡リソースタグ

名前 説明 価値

UserAssignedIdentities (ユーザー割り当てアイデンティティ)

名前 説明 価値

ユーザー割り当て識別子

名前 説明 価値

ボリューム

名前 説明 価値
mountOptions (マウントオプション) AzureFile のマウント中に使用されるマウント オプション。 コンマ区切りの文字列である必要があります。 ひも
名前 ボリューム名。 ひも
秘密 ボリュームに追加するシークレットの一覧。 シークレットが指定されていない場合、コレクション内のすべてのシークレットがボリュームに追加されます。 シークレットボリュームアイテム[]
ストレージ名 ストレージ リソースの名前。 EmptyDir とシークレットを指定する必要はありません。 ひも
ストレージタイプ ボリュームのストレージの種類。 指定しない場合は、EmptyDir を使用します。 「Azureファイル」
'EmptyDir'
「シークレット」

ボリュームマウント

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