Microsoft.App 作業 2023-11-02-preview
Bicep 資源定義
工作資源類型可以使用目標作業來部署:
- 資源群組 - 請參閱 資源群組部署命令
如需每個 API 版本中已變更屬性的清單,請參閱 變更記錄檔。
資源格式
若要建立 Microsoft.App/jobs 資源,請將下列 Bicep 新增至範本。
resource symbolicname 'Microsoft.App/jobs@2023-11-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'
}
]
metadata: any(Azure.Bicep.Types.Concrete.AnyType)
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'
}
}
屬性值
容器
名字 | 描述 | 價值 |
---|---|---|
args | 容器啟動命令自變數。 | string[] |
命令 | 容器啟動命令。 | string[] |
env | 容器環境變數。 | EnvironmentVar[] |
圖像 | 容器映像標記。 | 字串 |
名字 | 自訂容器名稱。 | 字串 |
探針 | 容器的探查清單。 | 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' |
InitContainer
名字 | 描述 | 價值 |
---|---|---|
args | 容器啟動命令自變數。 | string[] |
命令 | 容器啟動命令。 | string[] |
env | 容器環境變數。 | EnvironmentVar[] |
圖像 | 容器映像標記。 | 字串 |
名字 | 自訂容器名稱。 | 字串 |
資源 | 容器資源需求。 | ContainerResources |
volumeMounts | 容器磁碟區掛接。 | VolumeMount[] |
JobConfiguration
名字 | 描述 | 價值 |
---|---|---|
eventTriggerConfig | 觸發事件驅動作業的組態。 | JobConfigurationEventTriggerConfig |
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' |
VolumeMount
名字 | 描述 | 價值 |
---|---|---|
mountPath | 容器內應掛接磁碟區的路徑。不得包含 『:』。 | 字串 |
subPath | 應從中掛接容器磁碟區所在的磁碟區路徑。 預設為 “” (磁碟區的根目錄)。 | 字串 |
volumeName | 這必須符合磁碟區的名稱。 | 字串 |
ARM 樣本資源定義
工作資源類型可以使用目標作業來部署:
- 資源群組 - 請參閱 資源群組部署命令
如需每個 API 版本中已變更屬性的清單,請參閱 變更記錄檔。
資源格式
若要建立 Microsoft.App/jobs 資源,請將下列 JSON 新增至範本。
{
"type": "Microsoft.App/jobs",
"apiVersion": "2023-11-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"
}
],
"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"
}
}
屬性值
容器
名字 | 描述 | 價值 |
---|---|---|
args | 容器啟動命令自變數。 | string[] |
命令 | 容器啟動命令。 | string[] |
env | 容器環境變數。 | EnvironmentVar[] |
圖像 | 容器映像標記。 | 字串 |
名字 | 自訂容器名稱。 | 字串 |
探針 | 容器的探查清單。 | 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' |
InitContainer
名字 | 描述 | 價值 |
---|---|---|
args | 容器啟動命令自變數。 | string[] |
命令 | 容器啟動命令。 | string[] |
env | 容器環境變數。 | EnvironmentVar[] |
圖像 | 容器映像標記。 | 字串 |
名字 | 自訂容器名稱。 | 字串 |
資源 | 容器資源需求。 | ContainerResources |
volumeMounts | 容器磁碟區掛接。 | VolumeMount[] |
JobConfiguration
名字 | 描述 | 價值 |
---|---|---|
eventTriggerConfig | 觸發事件驅動作業的組態。 | JobConfigurationEventTriggerConfig |
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 版本 | '2023-11-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' |
VolumeMount
名字 | 描述 | 價值 |
---|---|---|
mountPath | 容器內應掛接磁碟區的路徑。不得包含 『:』。 | 字串 |
subPath | 應從中掛接容器磁碟區所在的磁碟區路徑。 預設為 “” (磁碟區的根目錄)。 | 字串 |
volumeName | 這必須符合磁碟區的名稱。 | 字串 |
Terraform (AzAPI 提供者) 資源定義
工作資源類型可以使用目標作業來部署:
- 資源群組
如需每個 API 版本中已變更屬性的清單,請參閱 變更記錄檔。
資源格式
若要建立 Microsoft.App/jobs 資源,請將下列 Terraform 新增至範本。
resource "azapi_resource" "symbolicname" {
type = "Microsoft.App/jobs@2023-11-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"
}
]
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"
}
})
}
屬性值
容器
名字 | 描述 | 價值 |
---|---|---|
args | 容器啟動命令自變數。 | string[] |
命令 | 容器啟動命令。 | string[] |
env | 容器環境變數。 | EnvironmentVar[] |
圖像 | 容器映像標記。 | 字串 |
名字 | 自訂容器名稱。 | 字串 |
探針 | 容器的探查清單。 | 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' |
InitContainer
名字 | 描述 | 價值 |
---|---|---|
args | 容器啟動命令自變數。 | string[] |
命令 | 容器啟動命令。 | string[] |
env | 容器環境變數。 | EnvironmentVar[] |
圖像 | 容器映像標記。 | 字串 |
名字 | 自訂容器名稱。 | 字串 |
資源 | 容器資源需求。 | ContainerResources |
volumeMounts | 容器磁碟區掛接。 | VolumeMount[] |
JobConfiguration
名字 | 描述 | 價值 |
---|---|---|
eventTriggerConfig | 觸發事件驅動作業的組態。 | JobConfigurationEventTriggerConfig |
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@2023-11-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' |
VolumeMount
名字 | 描述 | 價值 |
---|---|---|
mountPath | 容器內應掛接磁碟區的路徑。不得包含 『:』。 | 字串 |
subPath | 應從中掛接容器磁碟區所在的磁碟區路徑。 預設為 “” (磁碟區的根目錄)。 | 字串 |
volumeName | 這必須符合磁碟區的名稱。 | 字串 |