共用方式為


Microsoft.App 作業 2024-02-02-preview

Bicep 資源定義

工作資源類型可以使用目標作業來部署:

如需每個 API 版本中已變更屬性的清單,請參閱 變更記錄檔

資源格式

若要建立 Microsoft.App/jobs 資源,請將下列 Bicep 新增至範本。

resource symbolicname 'Microsoft.App/jobs@2024-02-02-preview' = {
  extendedLocation: {
    name: 'string'
    type: 'string'
  }
  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'
                }
              ]
              identity: 'string'
              metadata: any(Azure.Bicep.Types.Concrete.AnyType)
              name: 'string'
              type: 'string'
            }
          ]
        }
      }
      identitySettings: [
        {
          identity: 'string'
          lifecycle: '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'
          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: int
            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: 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'
  }
}

屬性值

容器

名字 描述 價值
args 容器啟動命令自變數。 string[]
命令 容器啟動命令。 string[]
env 容器環境變數。 EnvironmentVar[]
圖像 容器映像標記。 字串
imageType 影像的類型。 設定為 CloudBuild,讓系統管理映像,使用者將無法透過映像欄位更新映像。 設定為使用者提供的映像的 ContainerImage。 'CloudBuild'
'ContainerImage'
名字 自訂容器名稱。 字串
探針 容器的探查清單。 ContainerAppProbe[]
資源 容器資源需求。 ContainerResources
volumeMounts 容器磁碟區掛接。 VolumeMount[]

ContainerAppProbe

名字 描述 價值
failureThreshold 探查在成功之後,要視為失敗的最小連續失敗。 預設值為 3。 最小值為 1。 最大值為 10。 int
httpGet HTTPGet 指定要執行的 HTTP 要求。 ContainerAppProbeHttpGet
initialDelaySeconds 在起始即時探查之前,容器啟動后的秒數。 最小值為 1。 最大值為 60。 int
periodSeconds 執行探查的頻率(以秒為單位)。 預設為10秒。 最小值為 1。 最大值為 240。 int
successThreshold 探查在失敗后要視為成功的最小連續成功。 預設值為 1。 對於活躍度和啟動,必須是1。 最小值為 1。 最大值為 10。 int
tcpSocket TCPSocket 會指定涉及 TCP 連接埠的動作。 尚不支援 TCP 攔截。 ContainerAppProbeTcpSocket
terminationGracePeriodSeconds Pod 必須在探查失敗時正常終止的選擇性持續時間,以秒為單位。 寬限期是在 Pod 中執行的進程傳送終止訊號,以及以終止訊號強制停止進程的時間後,以秒為單位的持續時間。 設定此值的時間超過程式的預期清除時間。 如果此值為 nil,將會使用 Pod 的終止GracePeriodSeconds。 否則,此值會覆寫Pod規格所提供的值。值必須是非負整數。 值零表示透過終止訊號立即停止(沒有機會關閉)。 這是Alpha字段,需要啟用 ProbeTerminationGracePeriod 功能閘道。 最大值為 3600 秒(1 小時) int
timeoutSeconds 探查逾時後的秒數。預設值為 1 秒。 最小值為 1。 最大值為 240。 int
類型 探查的類型。 '活潑'
「整備」
'Startup'

ContainerAppProbeHttpGet

名字 描述 價值
主機 要連線的主機名,預設為 Pod IP。 您可能想要改為在 HTTPHeaders 中設定 「Host」。 字串
httpHeaders 在要求中設定的自定義標頭。 HTTP 允許重複的標頭。 ContainerAppProbeHttpGetHttpHeadersItem[]
路徑 HTTP 伺服器上存取的路徑。 字串
港口 要存取容器的埠名稱或號碼。 數字必須介於 1 到 65535 的範圍內。 名稱必須是IANA_SVC_NAME。 int (必要)
方案 用於連線到主機的配置。 默認為 HTTP。 'HTTP'
'HTTPS'

ContainerAppProbeHttpGetHttpHeadersItem

名字 描述 價值
名字 標頭功能變數名稱 字串 (必要)
價值 標頭域值 字串 (必要)

ContainerAppProbeTcpSocket

名字 描述 價值
主機 選擇性:要連線的主機名,預設為 Pod IP。 字串
港口 要存取容器的埠數目或名稱。 數字必須介於 1 到 65535 的範圍內。 名稱必須是IANA_SVC_NAME。 int (必要)

ContainerResources

名字 描述 價值
中央處理器 核心中所需的CPU,例如0.5 int
記憶 所需的記憶體,例如 “250Mb” 字串

EnvironmentVar

名字 描述 價值
名字 環境變數名稱。 字串
secretRef 要從中提取環境變數值的容器應用程式秘密名稱。 字串
價值 非秘密環境變數值。 字串

ExtendedLocation

名字 描述 價值
名字 擴充位置的名稱。 字串
類型 擴充位置的類型。 'CustomLocation'

IdentitySettings

名字 描述 價值
身份 指派給容器應用程式的使用者指派受控識別的資源標識符,或系統指派身分識別的「系統」。 字串 (必要)
生命週期 使用 來選取容器應用程式的生命週期階段,其中應該提供受控識別。 'All'
'Init'
'Main'
'None'

InitContainer

名字 描述 價值
args 容器啟動命令自變數。 string[]
命令 容器啟動命令。 string[]
env 容器環境變數。 EnvironmentVar[]
圖像 容器映像標記。 字串
imageType 影像的類型。 設定為 CloudBuild,讓系統管理映像,使用者將無法透過映像欄位更新映像。 設定為使用者提供的映像的 ContainerImage。 'CloudBuild'
'ContainerImage'
名字 自訂容器名稱。 字串
資源 容器資源需求。 ContainerResources
volumeMounts 容器磁碟區掛接。 VolumeMount[]

JobConfiguration

名字 描述 價值
eventTriggerConfig 觸發事件驅動作業的組態。 JobConfigurationEventTriggerConfig
identitySettings 指派給容器應用程式作業之受控識別的選擇性設定。 如果未在此指定受控識別,則會使用預設設定。 IdentitySettings[]
manualTriggerConfig 單一執行作業的手動觸發程序設定。 屬性 replicaCompletionCount 和 parallelism 預設會設定為 1 JobConfigurationManualTriggerConfig
登記處 容器應用程式作業所使用的私人容器登錄認證集合 RegistryCredentials[]
replicaRetryLimit 失敗作業之前重試次數上限。 int
replicaTimeout 允許複本執行的最大秒數。 int (必要)
scheduleTriggerConfig Cron 格式化為 cronjobs 的重複觸發程式排程 (“* * * *”)。 屬性完成和平行處理原則預設會設定為 1 JobConfigurationScheduleTriggerConfig
秘密 容器應用程式作業所使用的秘密集合 秘密[]
triggerType 作業的觸發程序類型 'Event'
'Manual'
'Schedule' (必要)

JobConfigurationEventTriggerConfig

名字 描述 價值
排比 可在指定時間執行的作業平行復本數目。 int
replicaCompletionCount 整體作業完成之前,複本完成的最小數目。 int
規模 調整事件驅動作業的組態。 JobScale

JobConfigurationManualTriggerConfig

名字 描述 價值
排比 可在指定時間執行的作業平行復本數目。 int
replicaCompletionCount 整體作業完成之前,複本完成的最小數目。 int

JobConfigurationScheduleTriggerConfig

名字 描述 價值
cronExpression Cron 格式化為 Cron 作業的重複排程 (“* * * * *”)。 字串 (必要)
排比 可在指定時間執行的作業平行復本數目。 int
replicaCompletionCount 整體作業完成之前,複本完成的最小數目。 int

JobProperties

名字 描述 價值
配置 Container Apps 作業組態屬性。 JobConfiguration
environmentId 環境的資源標識碼。 字串
範本 容器應用程式作業定義。 JobTemplate
workloadProfileName 要釘選容器應用程式作業執行的工作負載配置檔名稱。 字串

JobScale

名字 描述 價值
maxExecutions 為觸發程式建立的作業執行數目上限,預設值為100。 int
minExecutions 為觸發程式建立的作業執行數目下限,預設為 0 int
pollingInterval 以秒為單位檢查每個事件來源的間隔。 預設值為 30s int
規則 調整規則。 JobScaleRule[]

JobScaleRule

名字 描述 價值
認證 調整規則的驗證秘密。 ScaleRuleAuth[]
身份 指派給作業之使用者指派受控識別的資源標識符,或系統指派身分識別的「系統」。 字串
元數據 描述縮放規則的元數據屬性。 任何
名字 調整規則名稱 字串
類型 調整規則的類型
例如:azure-servicebus、redis 等。
字串

JobTemplate

名字 描述 價值
器皿 容器應用程式的容器定義清單。 容器[]
initContainers 在應用程式容器之前執行的特殊容器清單。 InitContainer[]
容器應用程式的磁碟區定義清單。 磁碟區[]

ManagedServiceIdentity

名字 描述 價值
類型 受控服務識別的類型(允許 SystemAssigned 和 UserAssigned 類型)。 'None'
'SystemAssigned'
'SystemAssigned,UserAssigned'
'UserAssigned' (必要)
userAssignedIdentities 與資源相關聯的使用者指派身分識別集。 userAssignedIdentities 字典索引鍵的格式為 ARM 資源標識符:'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}。 字典值可以是要求中的空白物件({})。 UserAssignedIdentities

Microsoft.App/jobs

名字 描述 價值
extendedLocation 擴充位置的複雜類型。 ExtendedLocation
身份 容器應用程式作業需要受控識別,才能與其他 Azure 服務互動,以不維護程式代碼中的任何秘密或認證。 ManagedServiceIdentity
位置 資源所在的地理位置 字串 (必要)
名字 資源名稱 字串

約束:
模式 = ^[-\w\._\(\)]+$ (必要)
性能 Container Apps 作業資源特定屬性。 JobProperties
標籤 資源標籤 標記名稱和值的字典。 請參閱範本中的 標籤

RegistryCredentials

名字 描述 價值
身份 用來向 Azure Container Registry 進行驗證的受控識別。 針對使用者指派的身分識別,請使用使用者指派的完整身分識別資源標識碼。 針對系統指派的身分識別,請使用 'system' 字串
passwordSecretRef 包含登錄登入密碼的秘密名稱 字串
伺服器 Container Registry Server 字串
username Container Registry 用戶名稱 字串

ScaleRuleAuth

名字 描述 價值
secretRef 要從中提取驗證參數的秘密名稱。 字串
triggerParameter 使用秘密的觸發程序參數 字串

秘密

名字 描述 價值
身份 要向 Azure Key Vault 進行驗證的受控識別資源識別碼,或使用系統指派的身分識別。 字串
keyVaultUrl 指向容器應用程式所參考秘密的 Azure Key Vault URL。 字串
名字 秘密名稱。 字串
價值 秘密值。 字串

約束:
敏感性值。 以安全參數的形式傳入。

SecretVolumeItem

名字 描述 價值
路徑 專案秘密的路徑。 如果未提供路徑,則path預設為secretRef中列出的秘密名稱。 字串
secretRef 要從中提取秘密值的容器應用程式秘密名稱。 字串

TrackedResourceTags

名字 描述 價值

UserAssignedIdentities

名字 描述 價值

UserAssignedIdentity

名字 描述 價值

名字 描述 價值
mountOptions 掛接 Azure 檔案共用或 NFS Azure 檔案共享時所使用的掛接選項。 必須是逗號分隔字串。 字串
名字 磁碟區名稱。 字串
秘密 要加入磁碟區中的秘密清單。 如果未提供秘密,集合中的所有秘密都會新增至磁碟區。 SecretVolumeItem[]
storageName 記憶體資源的名稱。 不需要提供 EmptyDir 和 Secret。 字串
storageType 磁碟區的儲存類型。 如果未提供,請使用 EmptyDir。 'AzureFile'
'EmptyDir'
'NfsAzureFile'
'Secret'
'Smb'

VolumeMount

名字 描述 價值
mountPath 容器內應掛接磁碟區的路徑。不得包含 『:』。 字串
subPath 應從中掛接容器磁碟區所在的磁碟區路徑。 預設為 “” (磁碟區的根目錄)。 字串
volumeName 這必須符合磁碟區的名稱。 字串

ARM 樣本資源定義

工作資源類型可以使用目標作業來部署:

如需每個 API 版本中已變更屬性的清單,請參閱 變更記錄檔

資源格式

若要建立 Microsoft.App/jobs 資源,請將下列 JSON 新增至範本。

{
  "type": "Microsoft.App/jobs",
  "apiVersion": "2024-02-02-preview",
  "name": "string",
  "extendedLocation": {
    "name": "string",
    "type": "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"
                }
              ],
              "identity": "string",
              "metadata": {},
              "name": "string",
              "type": "string"
            }
          ]
        }
      },
      "identitySettings": [
        {
          "identity": "string",
          "lifecycle": "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",
          "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": "int",
            "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": "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"
  }
}

屬性值

容器

名字 描述 價值
args 容器啟動命令自變數。 string[]
命令 容器啟動命令。 string[]
env 容器環境變數。 EnvironmentVar[]
圖像 容器映像標記。 字串
imageType 影像的類型。 設定為 CloudBuild,讓系統管理映像,使用者將無法透過映像欄位更新映像。 設定為使用者提供的映像的 ContainerImage。 'CloudBuild'
'ContainerImage'
名字 自訂容器名稱。 字串
探針 容器的探查清單。 ContainerAppProbe[]
資源 容器資源需求。 ContainerResources
volumeMounts 容器磁碟區掛接。 VolumeMount[]

ContainerAppProbe

名字 描述 價值
failureThreshold 探查在成功之後,要視為失敗的最小連續失敗。 預設值為 3。 最小值為 1。 最大值為 10。 int
httpGet HTTPGet 指定要執行的 HTTP 要求。 ContainerAppProbeHttpGet
initialDelaySeconds 在起始即時探查之前,容器啟動后的秒數。 最小值為 1。 最大值為 60。 int
periodSeconds 執行探查的頻率(以秒為單位)。 預設為10秒。 最小值為 1。 最大值為 240。 int
successThreshold 探查在失敗后要視為成功的最小連續成功。 預設值為 1。 對於活躍度和啟動,必須是1。 最小值為 1。 最大值為 10。 int
tcpSocket TCPSocket 會指定涉及 TCP 連接埠的動作。 尚不支援 TCP 攔截。 ContainerAppProbeTcpSocket
terminationGracePeriodSeconds Pod 必須在探查失敗時正常終止的選擇性持續時間,以秒為單位。 寬限期是在 Pod 中執行的進程傳送終止訊號,以及以終止訊號強制停止進程的時間後,以秒為單位的持續時間。 設定此值的時間超過程式的預期清除時間。 如果此值為 nil,將會使用 Pod 的終止GracePeriodSeconds。 否則,此值會覆寫Pod規格所提供的值。值必須是非負整數。 值零表示透過終止訊號立即停止(沒有機會關閉)。 這是Alpha字段,需要啟用 ProbeTerminationGracePeriod 功能閘道。 最大值為 3600 秒(1 小時) int
timeoutSeconds 探查逾時後的秒數。預設值為 1 秒。 最小值為 1。 最大值為 240。 int
類型 探查的類型。 '活潑'
「整備」
'Startup'

ContainerAppProbeHttpGet

名字 描述 價值
主機 要連線的主機名,預設為 Pod IP。 您可能想要改為在 HTTPHeaders 中設定 「Host」。 字串
httpHeaders 在要求中設定的自定義標頭。 HTTP 允許重複的標頭。 ContainerAppProbeHttpGetHttpHeadersItem[]
路徑 HTTP 伺服器上存取的路徑。 字串
港口 要存取容器的埠名稱或號碼。 數字必須介於 1 到 65535 的範圍內。 名稱必須是IANA_SVC_NAME。 int (必要)
方案 用於連線到主機的配置。 默認為 HTTP。 'HTTP'
'HTTPS'

ContainerAppProbeHttpGetHttpHeadersItem

名字 描述 價值
名字 標頭功能變數名稱 字串 (必要)
價值 標頭域值 字串 (必要)

ContainerAppProbeTcpSocket

名字 描述 價值
主機 選擇性:要連線的主機名,預設為 Pod IP。 字串
港口 要存取容器的埠數目或名稱。 數字必須介於 1 到 65535 的範圍內。 名稱必須是IANA_SVC_NAME。 int (必要)

ContainerResources

名字 描述 價值
中央處理器 核心中所需的CPU,例如0.5 int
記憶 所需的記憶體,例如 “250Mb” 字串

EnvironmentVar

名字 描述 價值
名字 環境變數名稱。 字串
secretRef 要從中提取環境變數值的容器應用程式秘密名稱。 字串
價值 非秘密環境變數值。 字串

ExtendedLocation

名字 描述 價值
名字 擴充位置的名稱。 字串
類型 擴充位置的類型。 'CustomLocation'

IdentitySettings

名字 描述 價值
身份 指派給容器應用程式的使用者指派受控識別的資源標識符,或系統指派身分識別的「系統」。 字串 (必要)
生命週期 使用 來選取容器應用程式的生命週期階段,其中應該提供受控識別。 'All'
'Init'
'Main'
'None'

InitContainer

名字 描述 價值
args 容器啟動命令自變數。 string[]
命令 容器啟動命令。 string[]
env 容器環境變數。 EnvironmentVar[]
圖像 容器映像標記。 字串
imageType 影像的類型。 設定為 CloudBuild,讓系統管理映像,使用者將無法透過映像欄位更新映像。 設定為使用者提供的映像的 ContainerImage。 'CloudBuild'
'ContainerImage'
名字 自訂容器名稱。 字串
資源 容器資源需求。 ContainerResources
volumeMounts 容器磁碟區掛接。 VolumeMount[]

JobConfiguration

名字 描述 價值
eventTriggerConfig 觸發事件驅動作業的組態。 JobConfigurationEventTriggerConfig
identitySettings 指派給容器應用程式作業之受控識別的選擇性設定。 如果未在此指定受控識別,則會使用預設設定。 IdentitySettings[]
manualTriggerConfig 單一執行作業的手動觸發程序設定。 屬性 replicaCompletionCount 和 parallelism 預設會設定為 1 JobConfigurationManualTriggerConfig
登記處 容器應用程式作業所使用的私人容器登錄認證集合 RegistryCredentials[]
replicaRetryLimit 失敗作業之前重試次數上限。 int
replicaTimeout 允許複本執行的最大秒數。 int (必要)
scheduleTriggerConfig Cron 格式化為 cronjobs 的重複觸發程式排程 (“* * * *”)。 屬性完成和平行處理原則預設會設定為 1 JobConfigurationScheduleTriggerConfig
秘密 容器應用程式作業所使用的秘密集合 秘密[]
triggerType 作業的觸發程序類型 'Event'
'Manual'
'Schedule' (必要)

JobConfigurationEventTriggerConfig

名字 描述 價值
排比 可在指定時間執行的作業平行復本數目。 int
replicaCompletionCount 整體作業完成之前,複本完成的最小數目。 int
規模 調整事件驅動作業的組態。 JobScale

JobConfigurationManualTriggerConfig

名字 描述 價值
排比 可在指定時間執行的作業平行復本數目。 int
replicaCompletionCount 整體作業完成之前,複本完成的最小數目。 int

JobConfigurationScheduleTriggerConfig

名字 描述 價值
cronExpression Cron 格式化為 Cron 作業的重複排程 (“* * * * *”)。 字串 (必要)
排比 可在指定時間執行的作業平行復本數目。 int
replicaCompletionCount 整體作業完成之前,複本完成的最小數目。 int

JobProperties

名字 描述 價值
配置 Container Apps 作業組態屬性。 JobConfiguration
environmentId 環境的資源標識碼。 字串
範本 容器應用程式作業定義。 JobTemplate
workloadProfileName 要釘選容器應用程式作業執行的工作負載配置檔名稱。 字串

JobScale

名字 描述 價值
maxExecutions 為觸發程式建立的作業執行數目上限,預設值為100。 int
minExecutions 為觸發程式建立的作業執行數目下限,預設為 0 int
pollingInterval 以秒為單位檢查每個事件來源的間隔。 預設值為 30s int
規則 調整規則。 JobScaleRule[]

JobScaleRule

名字 描述 價值
認證 調整規則的驗證秘密。 ScaleRuleAuth[]
身份 指派給作業之使用者指派受控識別的資源標識符,或系統指派身分識別的「系統」。 字串
元數據 描述縮放規則的元數據屬性。 任何
名字 調整規則名稱 字串
類型 調整規則的類型
例如:azure-servicebus、redis 等。
字串

JobTemplate

名字 描述 價值
器皿 容器應用程式的容器定義清單。 容器[]
initContainers 在應用程式容器之前執行的特殊容器清單。 InitContainer[]
容器應用程式的磁碟區定義清單。 磁碟區[]

ManagedServiceIdentity

名字 描述 價值
類型 受控服務識別的類型(允許 SystemAssigned 和 UserAssigned 類型)。 'None'
'SystemAssigned'
'SystemAssigned,UserAssigned'
'UserAssigned' (必要)
userAssignedIdentities 與資源相關聯的使用者指派身分識別集。 userAssignedIdentities 字典索引鍵的格式為 ARM 資源標識符:'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}。 字典值可以是要求中的空白物件({})。 UserAssignedIdentities

Microsoft.App/jobs

名字 描述 價值
apiVersion API 版本 '2024-02-02-preview'
extendedLocation 擴充位置的複雜類型。 ExtendedLocation
身份 容器應用程式作業需要受控識別,才能與其他 Azure 服務互動,以不維護程式代碼中的任何秘密或認證。 ManagedServiceIdentity
位置 資源所在的地理位置 字串 (必要)
名字 資源名稱 字串

約束:
模式 = ^[-\w\._\(\)]+$ (必要)
性能 Container Apps 作業資源特定屬性。 JobProperties
標籤 資源標籤 標記名稱和值的字典。 請參閱範本中的 標籤
類型 資源類型 'Microsoft.App/jobs'

RegistryCredentials

名字 描述 價值
身份 用來向 Azure Container Registry 進行驗證的受控識別。 針對使用者指派的身分識別,請使用使用者指派的完整身分識別資源標識碼。 針對系統指派的身分識別,請使用 'system' 字串
passwordSecretRef 包含登錄登入密碼的秘密名稱 字串
伺服器 Container Registry Server 字串
username Container Registry 用戶名稱 字串

ScaleRuleAuth

名字 描述 價值
secretRef 要從中提取驗證參數的秘密名稱。 字串
triggerParameter 使用秘密的觸發程序參數 字串

秘密

名字 描述 價值
身份 要向 Azure Key Vault 進行驗證的受控識別資源識別碼,或使用系統指派的身分識別。 字串
keyVaultUrl 指向容器應用程式所參考秘密的 Azure Key Vault URL。 字串
名字 秘密名稱。 字串
價值 秘密值。 字串

約束:
敏感性值。 以安全參數的形式傳入。

SecretVolumeItem

名字 描述 價值
路徑 專案秘密的路徑。 如果未提供路徑,則path預設為secretRef中列出的秘密名稱。 字串
secretRef 要從中提取秘密值的容器應用程式秘密名稱。 字串

TrackedResourceTags

名字 描述 價值

UserAssignedIdentities

名字 描述 價值

UserAssignedIdentity

名字 描述 價值

名字 描述 價值
mountOptions 掛接 Azure 檔案共用或 NFS Azure 檔案共享時所使用的掛接選項。 必須是逗號分隔字串。 字串
名字 磁碟區名稱。 字串
秘密 要加入磁碟區中的秘密清單。 如果未提供秘密,集合中的所有秘密都會新增至磁碟區。 SecretVolumeItem[]
storageName 記憶體資源的名稱。 不需要提供 EmptyDir 和 Secret。 字串
storageType 磁碟區的儲存類型。 如果未提供,請使用 EmptyDir。 'AzureFile'
'EmptyDir'
'NfsAzureFile'
'Secret'
'Smb'

VolumeMount

名字 描述 價值
mountPath 容器內應掛接磁碟區的路徑。不得包含 『:』。 字串
subPath 應從中掛接容器磁碟區所在的磁碟區路徑。 預設為 “” (磁碟區的根目錄)。 字串
volumeName 這必須符合磁碟區的名稱。 字串

Terraform (AzAPI 提供者) 資源定義

工作資源類型可以使用目標作業來部署:

  • 資源群組

如需每個 API 版本中已變更屬性的清單,請參閱 變更記錄檔

資源格式

若要建立 Microsoft.App/jobs 資源,請將下列 Terraform 新增至範本。

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.App/jobs@2024-02-02-preview"
  name = "string"
  identity = {
    type = "string"
    userAssignedIdentities = {
      {customized property} = {
      }
    }
  }
  location = "string"
  tags = {
    {customized property} = "string"
  }
  body = jsonencode({
    extendedLocation = {
      name = "string"
      type = "string"
    }
    properties = {
      configuration = {
        eventTriggerConfig = {
          parallelism = int
          replicaCompletionCount = int
          scale = {
            maxExecutions = int
            minExecutions = int
            pollingInterval = int
            rules = [
              {
                auth = [
                  {
                    secretRef = "string"
                    triggerParameter = "string"
                  }
                ]
                identity = "string"
                metadata = ?
                name = "string"
                type = "string"
              }
            ]
          }
        }
        identitySettings = [
          {
            identity = "string"
            lifecycle = "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"
            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 = int
              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 = 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"
    }
  })
}

屬性值

容器

名字 描述 價值
args 容器啟動命令自變數。 string[]
命令 容器啟動命令。 string[]
env 容器環境變數。 EnvironmentVar[]
圖像 容器映像標記。 字串
imageType 影像的類型。 設定為 CloudBuild,讓系統管理映像,使用者將無法透過映像欄位更新映像。 設定為使用者提供的映像的 ContainerImage。 'CloudBuild'
'ContainerImage'
名字 自訂容器名稱。 字串
探針 容器的探查清單。 ContainerAppProbe[]
資源 容器資源需求。 ContainerResources
volumeMounts 容器磁碟區掛接。 VolumeMount[]

ContainerAppProbe

名字 描述 價值
failureThreshold 探查在成功之後,要視為失敗的最小連續失敗。 預設值為 3。 最小值為 1。 最大值為 10。 int
httpGet HTTPGet 指定要執行的 HTTP 要求。 ContainerAppProbeHttpGet
initialDelaySeconds 在起始即時探查之前,容器啟動后的秒數。 最小值為 1。 最大值為 60。 int
periodSeconds 執行探查的頻率(以秒為單位)。 預設為10秒。 最小值為 1。 最大值為 240。 int
successThreshold 探查在失敗后要視為成功的最小連續成功。 預設值為 1。 對於活躍度和啟動,必須是1。 最小值為 1。 最大值為 10。 int
tcpSocket TCPSocket 會指定涉及 TCP 連接埠的動作。 尚不支援 TCP 攔截。 ContainerAppProbeTcpSocket
terminationGracePeriodSeconds Pod 必須在探查失敗時正常終止的選擇性持續時間,以秒為單位。 寬限期是在 Pod 中執行的進程傳送終止訊號,以及以終止訊號強制停止進程的時間後,以秒為單位的持續時間。 設定此值的時間超過程式的預期清除時間。 如果此值為 nil,將會使用 Pod 的終止GracePeriodSeconds。 否則,此值會覆寫Pod規格所提供的值。值必須是非負整數。 值零表示透過終止訊號立即停止(沒有機會關閉)。 這是Alpha字段,需要啟用 ProbeTerminationGracePeriod 功能閘道。 最大值為 3600 秒(1 小時) int
timeoutSeconds 探查逾時後的秒數。預設值為 1 秒。 最小值為 1。 最大值為 240。 int
類型 探查的類型。 '活潑'
「整備」
'Startup'

ContainerAppProbeHttpGet

名字 描述 價值
主機 要連線的主機名,預設為 Pod IP。 您可能想要改為在 HTTPHeaders 中設定 「Host」。 字串
httpHeaders 在要求中設定的自定義標頭。 HTTP 允許重複的標頭。 ContainerAppProbeHttpGetHttpHeadersItem[]
路徑 HTTP 伺服器上存取的路徑。 字串
港口 要存取容器的埠名稱或號碼。 數字必須介於 1 到 65535 的範圍內。 名稱必須是IANA_SVC_NAME。 int (必要)
方案 用於連線到主機的配置。 默認為 HTTP。 'HTTP'
'HTTPS'

ContainerAppProbeHttpGetHttpHeadersItem

名字 描述 價值
名字 標頭功能變數名稱 字串 (必要)
價值 標頭域值 字串 (必要)

ContainerAppProbeTcpSocket

名字 描述 價值
主機 選擇性:要連線的主機名,預設為 Pod IP。 字串
港口 要存取容器的埠數目或名稱。 數字必須介於 1 到 65535 的範圍內。 名稱必須是IANA_SVC_NAME。 int (必要)

ContainerResources

名字 描述 價值
中央處理器 核心中所需的CPU,例如0.5 int
記憶 所需的記憶體,例如 “250Mb” 字串

EnvironmentVar

名字 描述 價值
名字 環境變數名稱。 字串
secretRef 要從中提取環境變數值的容器應用程式秘密名稱。 字串
價值 非秘密環境變數值。 字串

ExtendedLocation

名字 描述 價值
名字 擴充位置的名稱。 字串
類型 擴充位置的類型。 'CustomLocation'

IdentitySettings

名字 描述 價值
身份 指派給容器應用程式的使用者指派受控識別的資源標識符,或系統指派身分識別的「系統」。 字串 (必要)
生命週期 使用 來選取容器應用程式的生命週期階段,其中應該提供受控識別。 'All'
'Init'
'Main'
'None'

InitContainer

名字 描述 價值
args 容器啟動命令自變數。 string[]
命令 容器啟動命令。 string[]
env 容器環境變數。 EnvironmentVar[]
圖像 容器映像標記。 字串
imageType 影像的類型。 設定為 CloudBuild,讓系統管理映像,使用者將無法透過映像欄位更新映像。 設定為使用者提供的映像的 ContainerImage。 'CloudBuild'
'ContainerImage'
名字 自訂容器名稱。 字串
資源 容器資源需求。 ContainerResources
volumeMounts 容器磁碟區掛接。 VolumeMount[]

JobConfiguration

名字 描述 價值
eventTriggerConfig 觸發事件驅動作業的組態。 JobConfigurationEventTriggerConfig
identitySettings 指派給容器應用程式作業之受控識別的選擇性設定。 如果未在此指定受控識別,則會使用預設設定。 IdentitySettings[]
manualTriggerConfig 單一執行作業的手動觸發程序設定。 屬性 replicaCompletionCount 和 parallelism 預設會設定為 1 JobConfigurationManualTriggerConfig
登記處 容器應用程式作業所使用的私人容器登錄認證集合 RegistryCredentials[]
replicaRetryLimit 失敗作業之前重試次數上限。 int
replicaTimeout 允許複本執行的最大秒數。 int (必要)
scheduleTriggerConfig Cron 格式化為 cronjobs 的重複觸發程式排程 (“* * * *”)。 屬性完成和平行處理原則預設會設定為 1 JobConfigurationScheduleTriggerConfig
秘密 容器應用程式作業所使用的秘密集合 秘密[]
triggerType 作業的觸發程序類型 'Event'
'Manual'
'Schedule' (必要)

JobConfigurationEventTriggerConfig

名字 描述 價值
排比 可在指定時間執行的作業平行復本數目。 int
replicaCompletionCount 整體作業完成之前,複本完成的最小數目。 int
規模 調整事件驅動作業的組態。 JobScale

JobConfigurationManualTriggerConfig

名字 描述 價值
排比 可在指定時間執行的作業平行復本數目。 int
replicaCompletionCount 整體作業完成之前,複本完成的最小數目。 int

JobConfigurationScheduleTriggerConfig

名字 描述 價值
cronExpression Cron 格式化為 Cron 作業的重複排程 (“* * * * *”)。 字串 (必要)
排比 可在指定時間執行的作業平行復本數目。 int
replicaCompletionCount 整體作業完成之前,複本完成的最小數目。 int

JobProperties

名字 描述 價值
配置 Container Apps 作業組態屬性。 JobConfiguration
environmentId 環境的資源標識碼。 字串
範本 容器應用程式作業定義。 JobTemplate
workloadProfileName 要釘選容器應用程式作業執行的工作負載配置檔名稱。 字串

JobScale

名字 描述 價值
maxExecutions 為觸發程式建立的作業執行數目上限,預設值為100。 int
minExecutions 為觸發程式建立的作業執行數目下限,預設為 0 int
pollingInterval 以秒為單位檢查每個事件來源的間隔。 預設值為 30s int
規則 調整規則。 JobScaleRule[]

JobScaleRule

名字 描述 價值
認證 調整規則的驗證秘密。 ScaleRuleAuth[]
身份 指派給作業之使用者指派受控識別的資源標識符,或系統指派身分識別的「系統」。 字串
元數據 描述縮放規則的元數據屬性。 任何
名字 調整規則名稱 字串
類型 調整規則的類型
例如:azure-servicebus、redis 等。
字串

JobTemplate

名字 描述 價值
器皿 容器應用程式的容器定義清單。 容器[]
initContainers 在應用程式容器之前執行的特殊容器清單。 InitContainer[]
容器應用程式的磁碟區定義清單。 磁碟區[]

ManagedServiceIdentity

名字 描述 價值
類型 受控服務識別的類型(允許 SystemAssigned 和 UserAssigned 類型)。 'None'
'SystemAssigned'
'SystemAssigned,UserAssigned'
'UserAssigned' (必要)
userAssignedIdentities 與資源相關聯的使用者指派身分識別集。 userAssignedIdentities 字典索引鍵的格式為 ARM 資源標識符:'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}。 字典值可以是要求中的空白物件({})。 UserAssignedIdentities

Microsoft.App/jobs

名字 描述 價值
extendedLocation 擴充位置的複雜類型。 ExtendedLocation
身份 容器應用程式作業需要受控識別,才能與其他 Azure 服務互動,以不維護程式代碼中的任何秘密或認證。 ManagedServiceIdentity
位置 資源所在的地理位置 字串 (必要)
名字 資源名稱 字串

約束:
模式 = ^[-\w\._\(\)]+$ (必要)
性能 Container Apps 作業資源特定屬性。 JobProperties
標籤 資源標籤 標記名稱和值的字典。
類型 資源類型 “Microsoft.App/jobs@2024-02-02-preview”

RegistryCredentials

名字 描述 價值
身份 用來向 Azure Container Registry 進行驗證的受控識別。 針對使用者指派的身分識別,請使用使用者指派的完整身分識別資源標識碼。 針對系統指派的身分識別,請使用 'system' 字串
passwordSecretRef 包含登錄登入密碼的秘密名稱 字串
伺服器 Container Registry Server 字串
username Container Registry 用戶名稱 字串

ScaleRuleAuth

名字 描述 價值
secretRef 要從中提取驗證參數的秘密名稱。 字串
triggerParameter 使用秘密的觸發程序參數 字串

秘密

名字 描述 價值
身份 要向 Azure Key Vault 進行驗證的受控識別資源識別碼,或使用系統指派的身分識別。 字串
keyVaultUrl 指向容器應用程式所參考秘密的 Azure Key Vault URL。 字串
名字 秘密名稱。 字串
價值 秘密值。 字串

約束:
敏感性值。 以安全參數的形式傳入。

SecretVolumeItem

名字 描述 價值
路徑 專案秘密的路徑。 如果未提供路徑,則path預設為secretRef中列出的秘密名稱。 字串
secretRef 要從中提取秘密值的容器應用程式秘密名稱。 字串

TrackedResourceTags

名字 描述 價值

UserAssignedIdentities

名字 描述 價值

UserAssignedIdentity

名字 描述 價值

名字 描述 價值
mountOptions 掛接 Azure 檔案共用或 NFS Azure 檔案共享時所使用的掛接選項。 必須是逗號分隔字串。 字串
名字 磁碟區名稱。 字串
秘密 要加入磁碟區中的秘密清單。 如果未提供秘密,集合中的所有秘密都會新增至磁碟區。 SecretVolumeItem[]
storageName 記憶體資源的名稱。 不需要提供 EmptyDir 和 Secret。 字串
storageType 磁碟區的儲存類型。 如果未提供,請使用 EmptyDir。 'AzureFile'
'EmptyDir'
'NfsAzureFile'
'Secret'
'Smb'

VolumeMount

名字 描述 價值
mountPath 容器內應掛接磁碟區的路徑。不得包含 『:』。 字串
subPath 應從中掛接容器磁碟區所在的磁碟區路徑。 預設為 “” (磁碟區的根目錄)。 字串
volumeName 這必須符合磁碟區的名稱。 字串