共用方式為


Microsoft.App 作業 2022-11-01-preview

Bicep 資源定義

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

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

資源格式

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

resource symbolicname 'Microsoft.App/jobs@2022-11-01-preview' = {
  identity: {
    type: 'string'
    userAssignedIdentities: {
      {customized property}: {}
    }
  }
  location: 'string'
  name: 'string'
  properties: {
    configuration: {
      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'
              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'
              volumeName: 'string'
            }
          ]
        }
      ]
      volumes: [
        {
          name: 'string'
          secrets: [
            {
              path: 'string'
              secretRef: 'string'
            }
          ]
          storageName: 'string'
          storageType: 'string'
        }
      ]
    }
    workloadProfileName: 'string'
  }
  tags: {
    {customized property}: 'string'
  }
}

屬性值

Microsoft.App/jobs

名稱 說明 價值觀
身分認同 容器應用程式作業需要受控識別,才能與其他 Azure 服務互動,以不維護程式代碼中的任何秘密或認證。 ManagedServiceIdentity
地點 資源所在的地理位置 字串 (必要)
名稱 資源名稱 字串 (必要)
屬性 Container Apps 作業資源特定屬性。 JobProperties (作業屬性)
標記 資源標籤 標記名稱和值的字典。 請參閱範本中的 標籤

容器

名稱 說明 價值觀
參數 容器啟動命令自變數。 字串[]
指令 容器啟動命令。 字串[]
環境 容器環境變數。 EnvironmentVar (環境變數
圖像 容器映像標記。 字符串
名稱 自訂容器名稱。 字符串
探針 容器的探查清單。 ContainerAppProbe[]
資源 容器資源需求。 容器資源
volumeMounts 容器磁碟區掛接。 體積掛載[]

ContainerAppProbe 的

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

ContainerAppProbeHttpGet

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

ContainerAppProbeHttpGetHttpHeadersItem

名稱 說明 價值觀
名稱 標頭功能變數名稱 字串 (必要)
價值 標頭域值 字串 (必要)

容器應用探針 TcpSocket

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

容器資源

名稱 說明 價值觀
中央處理器 核心中所需的CPU,例如0.5 整數 (int)
記憶 所需的記憶體,例如 “250Mb” 字符串

EnvironmentVar

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

InitContainer (初始容器)

名稱 說明 價值觀
參數 容器啟動命令自變數。 字串[]
指令 容器啟動命令。 字串[]
環境 容器環境變數。 EnvironmentVar (環境變數
圖像 容器映像標記。 字符串
名稱 自訂容器名稱。 字符串
資源 容器資源需求。 容器資源
volumeMounts 容器磁碟區掛接。 體積掛載[]

JobConfiguration

名稱 說明 價值觀
手動觸發配置 單一執行作業的手動觸發程序設定。 屬性 replicaCompletionCount 和 parallelism 預設會設定為 1 JobConfigurationManualTriggerConfig
登記處 容器應用程式作業所使用的私人容器登錄認證集合 RegistryCredentials[]
replicaRetryLimit 失敗作業之前重試次數上限。 整數 (int)
replicaTimeout (複製超時) 允許複本執行的最大秒數。 int (必要)
scheduleTriggerConfig Cron 格式化為 cronjobs 的重複觸發程式排程 (“* * * *”)。 屬性完成和平行處理原則預設會設定為 1 JobConfigurationScheduleTriggerConfig
祕密 容器應用程式作業所使用的秘密集合 秘密[]
triggerType 作業的觸發程序類型 '事件'
“手動”
'Schedule' (必要)

JobConfigurationManualTriggerConfig

名稱 說明 價值觀
平行性 可在指定時間執行的作業平行復本數目。 整數 (int)
replicaCompletionCount 整體作業完成之前,複本完成的最小數目。 整數 (int)

JobConfigurationScheduleTriggerConfig

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

JobProperties (作業屬性)

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

JobTemplate (作業範本)

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

ManagedServiceIdentity

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

註冊表憑據

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

祕密

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

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

SecretVolumeItem

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

TrackedResourceTags

名稱 說明 價值觀

UserAssignedIdentities

名稱 說明 價值觀

UserAssignedIdentity

名稱 說明 價值觀

音量

名稱 說明 價值觀
名稱 磁碟區名稱。 字符串
祕密 要加入磁碟區中的秘密清單。 如果未提供秘密,集合中的所有秘密都會新增至磁碟區。 SecretVolumeItem[]
存儲名稱 記憶體資源的名稱。 不需要提供 EmptyDir 和 Secret。 字符串
存儲類型 磁碟區的儲存類型。 如果未提供,請使用 EmptyDir。 “AzureFile”
'EmptyDir' (空目錄)
“秘密”

VolumeMount (體積掛載)

名稱 說明 價值觀
mountPath 容器內應掛接磁碟區的路徑。不得包含 『:』。 字符串
卷名稱 這必須符合磁碟區的名稱。 字符串

使用範例

Azure 已驗證的模組

下列 Azure 驗證模組 可用來部署此資源類型。

模組 說明
應用程式作業 應用程式作業的AVM資源模組

ARM 樣本資源定義

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

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

資源格式

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

{
  "type": "Microsoft.App/jobs",
  "apiVersion": "2022-11-01-preview",
  "name": "string",
  "identity": {
    "type": "string",
    "userAssignedIdentities": {
      "{customized property}": {
      }
    }
  },
  "location": "string",
  "properties": {
    "configuration": {
      "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",
              "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",
              "volumeName": "string"
            }
          ]
        }
      ],
      "volumes": [
        {
          "name": "string",
          "secrets": [
            {
              "path": "string",
              "secretRef": "string"
            }
          ],
          "storageName": "string",
          "storageType": "string"
        }
      ]
    },
    "workloadProfileName": "string"
  },
  "tags": {
    "{customized property}": "string"
  }
}

屬性值

Microsoft.App/jobs

名稱 說明 價值觀
apiVersion API 版本 “2022-11-01-預覽”
身分認同 容器應用程式作業需要受控識別,才能與其他 Azure 服務互動,以不維護程式代碼中的任何秘密或認證。 ManagedServiceIdentity
地點 資源所在的地理位置 字串 (必要)
名稱 資源名稱 字串 (必要)
屬性 Container Apps 作業資源特定屬性。 JobProperties (作業屬性)
標記 資源標籤 標記名稱和值的字典。 請參閱範本中的 標籤
類型 資源類型 “Microsoft.App/jobs”

容器

名稱 說明 價值觀
參數 容器啟動命令自變數。 字串[]
指令 容器啟動命令。 字串[]
環境 容器環境變數。 EnvironmentVar (環境變數
圖像 容器映像標記。 字符串
名稱 自訂容器名稱。 字符串
探針 容器的探查清單。 ContainerAppProbe[]
資源 容器資源需求。 容器資源
volumeMounts 容器磁碟區掛接。 體積掛載[]

ContainerAppProbe 的

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

ContainerAppProbeHttpGet

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

ContainerAppProbeHttpGetHttpHeadersItem

名稱 說明 價值觀
名稱 標頭功能變數名稱 字串 (必要)
價值 標頭域值 字串 (必要)

容器應用探針 TcpSocket

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

容器資源

名稱 說明 價值觀
中央處理器 核心中所需的CPU,例如0.5 整數 (int)
記憶 所需的記憶體,例如 “250Mb” 字符串

EnvironmentVar

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

InitContainer (初始容器)

名稱 說明 價值觀
參數 容器啟動命令自變數。 字串[]
指令 容器啟動命令。 字串[]
環境 容器環境變數。 EnvironmentVar (環境變數
圖像 容器映像標記。 字符串
名稱 自訂容器名稱。 字符串
資源 容器資源需求。 容器資源
volumeMounts 容器磁碟區掛接。 體積掛載[]

JobConfiguration

名稱 說明 價值觀
手動觸發配置 單一執行作業的手動觸發程序設定。 屬性 replicaCompletionCount 和 parallelism 預設會設定為 1 JobConfigurationManualTriggerConfig
登記處 容器應用程式作業所使用的私人容器登錄認證集合 RegistryCredentials[]
replicaRetryLimit 失敗作業之前重試次數上限。 整數 (int)
replicaTimeout (複製超時) 允許複本執行的最大秒數。 int (必要)
scheduleTriggerConfig Cron 格式化為 cronjobs 的重複觸發程式排程 (“* * * *”)。 屬性完成和平行處理原則預設會設定為 1 JobConfigurationScheduleTriggerConfig
祕密 容器應用程式作業所使用的秘密集合 秘密[]
triggerType 作業的觸發程序類型 '事件'
“手動”
'Schedule' (必要)

JobConfigurationManualTriggerConfig

名稱 說明 價值觀
平行性 可在指定時間執行的作業平行復本數目。 整數 (int)
replicaCompletionCount 整體作業完成之前,複本完成的最小數目。 整數 (int)

JobConfigurationScheduleTriggerConfig

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

JobProperties (作業屬性)

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

JobTemplate (作業範本)

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

ManagedServiceIdentity

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

註冊表憑據

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

祕密

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

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

SecretVolumeItem

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

TrackedResourceTags

名稱 說明 價值觀

UserAssignedIdentities

名稱 說明 價值觀

UserAssignedIdentity

名稱 說明 價值觀

音量

名稱 說明 價值觀
名稱 磁碟區名稱。 字符串
祕密 要加入磁碟區中的秘密清單。 如果未提供秘密,集合中的所有秘密都會新增至磁碟區。 SecretVolumeItem[]
存儲名稱 記憶體資源的名稱。 不需要提供 EmptyDir 和 Secret。 字符串
存儲類型 磁碟區的儲存類型。 如果未提供,請使用 EmptyDir。 “AzureFile”
'EmptyDir' (空目錄)
“秘密”

VolumeMount (體積掛載)

名稱 說明 價值觀
mountPath 容器內應掛接磁碟區的路徑。不得包含 『:』。 字符串
卷名稱 這必須符合磁碟區的名稱。 字符串

使用範例

Terraform (AzAPI 提供者) 資源定義

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

  • 資源群組

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

資源格式

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

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.App/jobs@2022-11-01-preview"
  name = "string"
  parent_id = "string"
  identity {
    type = "string"
    identity_ids = [
      "string"
    ]
  }
  location = "string"
  tags = {
    {customized property} = "string"
  }
  body = {
    properties = {
      configuration = {
        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"
                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"
                volumeName = "string"
              }
            ]
          }
        ]
        volumes = [
          {
            name = "string"
            secrets = [
              {
                path = "string"
                secretRef = "string"
              }
            ]
            storageName = "string"
            storageType = "string"
          }
        ]
      }
      workloadProfileName = "string"
    }
  }
}

屬性值

Microsoft.App/jobs

名稱 說明 價值觀
身分認同 容器應用程式作業需要受控識別,才能與其他 Azure 服務互動,以不維護程式代碼中的任何秘密或認證。 ManagedServiceIdentity
地點 資源所在的地理位置 字串 (必要)
名稱 資源名稱 字串 (必要)
屬性 Container Apps 作業資源特定屬性。 JobProperties (作業屬性)
標記 資源標籤 標記名稱和值的字典。
類型 資源類型 “Microsoft.App/jobs@2022-11-01-preview”

容器

名稱 說明 價值觀
參數 容器啟動命令自變數。 字串[]
指令 容器啟動命令。 字串[]
環境 容器環境變數。 EnvironmentVar (環境變數
圖像 容器映像標記。 字符串
名稱 自訂容器名稱。 字符串
探針 容器的探查清單。 ContainerAppProbe[]
資源 容器資源需求。 容器資源
volumeMounts 容器磁碟區掛接。 體積掛載[]

ContainerAppProbe 的

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

ContainerAppProbeHttpGet

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

ContainerAppProbeHttpGetHttpHeadersItem

名稱 說明 價值觀
名稱 標頭功能變數名稱 字串 (必要)
價值 標頭域值 字串 (必要)

容器應用探針 TcpSocket

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

容器資源

名稱 說明 價值觀
中央處理器 核心中所需的CPU,例如0.5 整數 (int)
記憶 所需的記憶體,例如 “250Mb” 字符串

EnvironmentVar

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

InitContainer (初始容器)

名稱 說明 價值觀
參數 容器啟動命令自變數。 字串[]
指令 容器啟動命令。 字串[]
環境 容器環境變數。 EnvironmentVar (環境變數
圖像 容器映像標記。 字符串
名稱 自訂容器名稱。 字符串
資源 容器資源需求。 容器資源
volumeMounts 容器磁碟區掛接。 體積掛載[]

JobConfiguration

名稱 說明 價值觀
手動觸發配置 單一執行作業的手動觸發程序設定。 屬性 replicaCompletionCount 和 parallelism 預設會設定為 1 JobConfigurationManualTriggerConfig
登記處 容器應用程式作業所使用的私人容器登錄認證集合 RegistryCredentials[]
replicaRetryLimit 失敗作業之前重試次數上限。 整數 (int)
replicaTimeout (複製超時) 允許複本執行的最大秒數。 int (必要)
scheduleTriggerConfig Cron 格式化為 cronjobs 的重複觸發程式排程 (“* * * *”)。 屬性完成和平行處理原則預設會設定為 1 JobConfigurationScheduleTriggerConfig
祕密 容器應用程式作業所使用的秘密集合 秘密[]
triggerType 作業的觸發程序類型 '事件'
“手動”
'Schedule' (必要)

JobConfigurationManualTriggerConfig

名稱 說明 價值觀
平行性 可在指定時間執行的作業平行復本數目。 整數 (int)
replicaCompletionCount 整體作業完成之前,複本完成的最小數目。 整數 (int)

JobConfigurationScheduleTriggerConfig

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

JobProperties (作業屬性)

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

JobTemplate (作業範本)

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

ManagedServiceIdentity

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

註冊表憑據

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

祕密

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

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

SecretVolumeItem

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

TrackedResourceTags

名稱 說明 價值觀

UserAssignedIdentities

名稱 說明 價值觀

UserAssignedIdentity

名稱 說明 價值觀

音量

名稱 說明 價值觀
名稱 磁碟區名稱。 字符串
祕密 要加入磁碟區中的秘密清單。 如果未提供秘密,集合中的所有秘密都會新增至磁碟區。 SecretVolumeItem[]
存儲名稱 記憶體資源的名稱。 不需要提供 EmptyDir 和 Secret。 字符串
存儲類型 磁碟區的儲存類型。 如果未提供,請使用 EmptyDir。 “AzureFile”
'EmptyDir' (空目錄)
“秘密”

VolumeMount (體積掛載)

名稱 說明 價值觀
mountPath 容器內應掛接磁碟區的路徑。不得包含 『:』。 字符串
卷名稱 這必須符合磁碟區的名稱。 字符串