Bicep 資源定義
containerApps 資源類型可以使用目標作業來部署:
如需每個 API 版本中已變更屬性的清單,請參閱 變更記錄檔。
若要建立 Microsoft.App/containerApps 資源,請將下列 Bicep 新增至範本。
resource symbolicname 'Microsoft.App/containerApps@2022-01-01-preview' = {
name: 'string'
location: 'string'
tags: {
tagName1: 'tagValue1'
tagName2: 'tagValue2'
}
identity: {
type: 'string'
userAssignedIdentities: {
{customized property}: {}
}
}
properties: {
configuration: {
activeRevisionsMode: 'string'
dapr: {
appId: 'string'
appPort: int
appProtocol: 'string'
enabled: bool
}
ingress: {
allowInsecure: bool
customDomains: [
{
bindingType: 'string'
certificateId: 'string'
name: 'string'
}
]
external: bool
targetPort: int
traffic: [
{
latestRevision: bool
revisionName: 'string'
weight: int
}
]
transport: 'string'
}
registries: [
{
passwordSecretRef: 'string'
server: 'string'
username: 'string'
}
]
secrets: [
{
name: 'string'
value: 'string'
}
]
}
managedEnvironmentId: '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: json('decimal-as-string')
memory: 'string'
}
volumeMounts: [
{
mountPath: 'string'
volumeName: 'string'
}
]
}
]
revisionSuffix: 'string'
scale: {
maxReplicas: int
minReplicas: int
rules: [
{
azureQueue: {
auth: [
{
secretRef: 'string'
triggerParameter: 'string'
}
]
queueLength: int
queueName: 'string'
}
custom: {
auth: [
{
secretRef: 'string'
triggerParameter: 'string'
}
]
metadata: {
{customized property}: 'string'
}
type: 'string'
}
http: {
auth: [
{
secretRef: 'string'
triggerParameter: 'string'
}
]
metadata: {
{customized property}: 'string'
}
}
name: 'string'
}
]
}
volumes: [
{
name: 'string'
storageName: 'string'
storageType: 'string'
}
]
}
}
}
屬性值
containerApps
名字 |
描述 |
價值 |
名字 |
資源名稱 |
字串 (必要)
字元限制:2-32
合法字元: 小寫字母、數位和連字元。。
以字母開頭,並以英數位元結尾。 |
位置 |
資源所在的地理位置 |
字串 (必要) |
標籤 |
資源標籤。 |
標記名稱和值的字典。 請參閱範本中的 標籤 |
身份 |
容器應用程式的受控識別可與其他 Azure 服務互動,而不需在程式碼中維護任何秘密或認證。 |
ManagedServiceIdentity |
性能 |
ContainerApp 資源特定屬性 |
ContainerAppProperties |
ManagedServiceIdentity
名字 |
描述 |
價值 |
類型 |
受控服務識別的類型(允許 SystemAssigned 和 UserAssigned 類型)。 |
'None' 'SystemAssigned' 'SystemAssigned,UserAssigned' 'UserAssigned' (必要) |
userAssignedIdentities |
與資源相關聯的使用者指派身分識別集。 userAssignedIdentities 字典索引鍵的格式為 ARM 資源標識符:'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}。 字典值可以是要求中的空白物件({})。 |
UserAssignedIdentities |
UserAssignedIdentities
UserAssignedIdentity
此物件不包含在部署期間設定的任何屬性。 所有屬性都是 ReadOnly。
ContainerAppProperties
名字 |
描述 |
價值 |
配置 |
非版本設定的容器應用程式組態屬性。 |
組態 |
managedEnvironmentId |
容器應用程式環境的資源標識碼。 |
字串 |
範本 |
容器應用程式已建立版本的應用程式定義。 |
範本 |
配置
名字 |
描述 |
價值 |
activeRevisionsMode |
ActiveRevisionsMode 控制容器應用程式的使用中修訂處理方式: {list}{item}多個:多個修訂可以作用中。 如果未提供任何值,則這是預設值{/item}{item}Single:一次只能使用一個修訂。 修訂權數不能用於此模式{/item}{/list} |
'Multiple' 'Single' |
dapr |
容器應用程式的 Dapr 組態。 |
達普 |
入口 |
輸入組態。 |
輸入 |
登記處 |
容器應用程式所使用的容器的私人容器登錄認證集合 |
RegistryCredentials[] |
秘密 |
容器應用程式所使用的秘密集合 |
秘密[] |
Dapr
名字 |
描述 |
價值 |
appId |
Dapr 應用程式識別碼 |
字串 |
appPort |
告知 Dapr 您的應用程式正在接聽哪個埠 |
int |
appProtocol |
告知 Dapr 您的應用程式所使用的通訊協定。 有效的選項為 HTTP 和 grpc。 預設值為 HTTP |
'grpc' 'http ' |
啟用 |
布爾值,指出 Dapr 側車是否已啟用 |
bool |
入口
名字 |
描述 |
價值 |
allowInsecure |
布爾,指出是否允許 HTTP 連線。 如果設定為 false HTTP 連線,則會自動重新導向至 HTTPS 連線 |
bool |
customDomains |
Container Apps 主機名的自定義網域系結。 |
CustomDomain[] |
外部 |
布爾值,指出應用程式是否公開外部 HTTP 端點 |
bool |
targetPort |
來自輸入流量的容器中目標埠 |
int |
交通 |
應用程式修訂的流量權數 |
TrafficWeight[] |
運輸 |
輸入傳輸通訊協定 |
'auto' 'http ' 'http2 ' |
CustomDomain
名字 |
描述 |
價值 |
bindingType |
自定義網域系結類型。 |
'Disabled' 'SniEnabled' |
certificateId |
要系結至此主機名之憑證的資源標識符。 |
字串 |
名字 |
主機名。 |
字串 (必要) |
TrafficWeight
名字 |
描述 |
價值 |
latestRevision |
表示流量權數屬於最新的穩定修訂 |
bool |
revisionName |
修訂的名稱 |
字串 |
重量 |
指派給修訂的流量權數 |
int |
RegistryCredentials
名字 |
描述 |
價值 |
passwordSecretRef |
包含登錄登入密碼的秘密名稱 |
字串 |
伺服器 |
Container Registry Server |
字串 |
username |
Container Registry 用戶名稱 |
字串 |
秘密
名字 |
描述 |
價值 |
名字 |
秘密名稱。 |
字串 |
價值 |
秘密值。 |
字串
約束: 敏感性值。 以安全參數的形式傳入。
|
範本
名字 |
描述 |
價值 |
器皿 |
容器應用程式的容器定義清單。 |
容器[] |
revisionSuffix |
附加至修訂名稱的使用者易記後綴 |
字串 |
規模 |
調整容器應用程式的屬性。 |
調整 |
卷 |
容器應用程式的磁碟區定義清單。 |
磁碟區[] |
容器
EnvironmentVar
名字 |
描述 |
價值 |
名字 |
環境變數名稱。 |
字串 |
secretRef |
要從中提取環境變數值的容器應用程式秘密名稱。 |
字串 |
價值 |
非秘密環境變數值。 |
字串 |
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' |
名字 |
描述 |
價值 |
名字 |
標頭功能變數名稱 |
字串 (必要) |
價值 |
標頭域值 |
字串 (必要) |
ContainerAppProbeTcpSocket
名字 |
描述 |
價值 |
主機 |
選擇性:要連線的主機名,預設為 Pod IP。 |
字串 |
港口 |
要存取容器的埠數目或名稱。 數字必須介於 1 到 65535 的範圍內。 名稱必須是IANA_SVC_NAME。 |
int (必要) |
ContainerResources
名字 |
描述 |
價值 |
中央處理器 |
核心中所需的 CPU,例如 0.5 若要指定十進位值,請使用 json() 函式。 |
int 或 json decimal |
記憶 |
所需的記憶體,例如 “250Mb” |
字串 |
VolumeMount
名字 |
描述 |
價值 |
mountPath |
容器內應掛接磁碟區的路徑。不得包含 『:』。 |
字串 |
volumeName |
這必須符合磁碟區的名稱。 |
字串 |
規模
名字 |
描述 |
價值 |
maxReplicas |
自選。 容器復本的數目上限。 如果未設定,則預設為10。 |
int |
minReplicas |
自選。 容器復本數目下限。 |
int |
規則 |
調整規則。 |
ScaleRule[] |
ScaleRule
QueueScaleRule
名字 |
描述 |
價值 |
認證 |
佇列調整規則的驗證秘密。 |
ScaleRuleAuth[] |
queueLength |
佇列長度。 |
int |
queueName |
佇列名稱。 |
字串 |
ScaleRuleAuth
名字 |
描述 |
價值 |
secretRef |
要從中提取驗證參數的容器應用程式秘密名稱。 |
字串 |
triggerParameter |
使用秘密的觸發程序參數 |
字串 |
CustomScaleRule
HttpScaleRule
卷
名字 |
描述 |
價值 |
名字 |
磁碟區名稱。 |
字串 |
storageName |
記憶體資源的名稱。 不需要提供 EmptyDir。 |
字串 |
storageType |
磁碟區的儲存類型。 如果未提供,請使用 EmptyDir。 |
'AzureFile' 'EmptyDir' |
快速入門範本
下列快速入門範本會部署此資源類型。
ARM 樣本資源定義
containerApps 資源類型可以使用目標作業來部署:
如需每個 API 版本中已變更屬性的清單,請參閱 變更記錄檔。
若要建立 Microsoft.App/containerApps 資源,請將下列 JSON 新增至範本。
{
"type": "Microsoft.App/containerApps",
"apiVersion": "2022-01-01-preview",
"name": "string",
"location": "string",
"tags": {
"tagName1": "tagValue1",
"tagName2": "tagValue2"
},
"identity": {
"type": "string",
"userAssignedIdentities": {
"{customized property}": {}
}
},
"properties": {
"configuration": {
"activeRevisionsMode": "string",
"dapr": {
"appId": "string",
"appPort": "int",
"appProtocol": "string",
"enabled": "bool"
},
"ingress": {
"allowInsecure": "bool",
"customDomains": [
{
"bindingType": "string",
"certificateId": "string",
"name": "string"
}
],
"external": "bool",
"targetPort": "int",
"traffic": [
{
"latestRevision": "bool",
"revisionName": "string",
"weight": "int"
}
],
"transport": "string"
},
"registries": [
{
"passwordSecretRef": "string",
"server": "string",
"username": "string"
}
],
"secrets": [
{
"name": "string",
"value": "string"
}
]
},
"managedEnvironmentId": "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": "[json('decimal-as-string')]",
"memory": "string"
},
"volumeMounts": [
{
"mountPath": "string",
"volumeName": "string"
}
]
}
],
"revisionSuffix": "string",
"scale": {
"maxReplicas": "int",
"minReplicas": "int",
"rules": [
{
"azureQueue": {
"auth": [
{
"secretRef": "string",
"triggerParameter": "string"
}
],
"queueLength": "int",
"queueName": "string"
},
"custom": {
"auth": [
{
"secretRef": "string",
"triggerParameter": "string"
}
],
"metadata": {
"{customized property}": "string"
},
"type": "string"
},
"http": {
"auth": [
{
"secretRef": "string",
"triggerParameter": "string"
}
],
"metadata": {
"{customized property}": "string"
}
},
"name": "string"
}
]
},
"volumes": [
{
"name": "string",
"storageName": "string",
"storageType": "string"
}
]
}
}
}
屬性值
containerApps
名字 |
描述 |
價值 |
類型 |
資源類型 |
'Microsoft.App/containerApps' |
apiVersion |
資源 API 版本 |
'2022-01-01-preview' |
名字 |
資源名稱 |
字串 (必要)
字元限制:2-32
合法字元: 小寫字母、數位和連字元。。
以字母開頭,並以英數位元結尾。 |
位置 |
資源所在的地理位置 |
字串 (必要) |
標籤 |
資源標籤。 |
標記名稱和值的字典。 請參閱範本中的 標籤 |
身份 |
容器應用程式的受控識別可與其他 Azure 服務互動,而不需在程式碼中維護任何秘密或認證。 |
ManagedServiceIdentity |
性能 |
ContainerApp 資源特定屬性 |
ContainerAppProperties |
ManagedServiceIdentity
名字 |
描述 |
價值 |
類型 |
受控服務識別的類型(允許 SystemAssigned 和 UserAssigned 類型)。 |
'None' 'SystemAssigned' 'SystemAssigned,UserAssigned' 'UserAssigned' (必要) |
userAssignedIdentities |
與資源相關聯的使用者指派身分識別集。 userAssignedIdentities 字典索引鍵的格式為 ARM 資源標識符:'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}。 字典值可以是要求中的空白物件({})。 |
UserAssignedIdentities |
UserAssignedIdentities
UserAssignedIdentity
此物件不包含在部署期間設定的任何屬性。 所有屬性都是 ReadOnly。
ContainerAppProperties
名字 |
描述 |
價值 |
配置 |
非版本設定的容器應用程式組態屬性。 |
組態 |
managedEnvironmentId |
容器應用程式環境的資源標識碼。 |
字串 |
範本 |
容器應用程式已建立版本的應用程式定義。 |
範本 |
配置
名字 |
描述 |
價值 |
activeRevisionsMode |
ActiveRevisionsMode 控制容器應用程式的使用中修訂處理方式: {list}{item}多個:多個修訂可以作用中。 如果未提供任何值,則這是預設值{/item}{item}Single:一次只能使用一個修訂。 修訂權數不能用於此模式{/item}{/list} |
'Multiple' 'Single' |
dapr |
容器應用程式的 Dapr 組態。 |
達普 |
入口 |
輸入組態。 |
輸入 |
登記處 |
容器應用程式所使用的容器的私人容器登錄認證集合 |
RegistryCredentials[] |
秘密 |
容器應用程式所使用的秘密集合 |
秘密[] |
Dapr
名字 |
描述 |
價值 |
appId |
Dapr 應用程式識別碼 |
字串 |
appPort |
告知 Dapr 您的應用程式正在接聽哪個埠 |
int |
appProtocol |
告知 Dapr 您的應用程式所使用的通訊協定。 有效的選項為 HTTP 和 grpc。 預設值為 HTTP |
'grpc' 'http ' |
啟用 |
布爾值,指出 Dapr 側車是否已啟用 |
bool |
入口
名字 |
描述 |
價值 |
allowInsecure |
布爾,指出是否允許 HTTP 連線。 如果設定為 false HTTP 連線,則會自動重新導向至 HTTPS 連線 |
bool |
customDomains |
Container Apps 主機名的自定義網域系結。 |
CustomDomain[] |
外部 |
布爾值,指出應用程式是否公開外部 HTTP 端點 |
bool |
targetPort |
來自輸入流量的容器中目標埠 |
int |
交通 |
應用程式修訂的流量權數 |
TrafficWeight[] |
運輸 |
輸入傳輸通訊協定 |
'auto' 'http ' 'http2 ' |
CustomDomain
名字 |
描述 |
價值 |
bindingType |
自定義網域系結類型。 |
'Disabled' 'SniEnabled' |
certificateId |
要系結至此主機名之憑證的資源標識符。 |
字串 |
名字 |
主機名。 |
字串 (必要) |
TrafficWeight
名字 |
描述 |
價值 |
latestRevision |
表示流量權數屬於最新的穩定修訂 |
bool |
revisionName |
修訂的名稱 |
字串 |
重量 |
指派給修訂的流量權數 |
int |
RegistryCredentials
名字 |
描述 |
價值 |
passwordSecretRef |
包含登錄登入密碼的秘密名稱 |
字串 |
伺服器 |
Container Registry Server |
字串 |
username |
Container Registry 用戶名稱 |
字串 |
秘密
名字 |
描述 |
價值 |
名字 |
秘密名稱。 |
字串 |
價值 |
秘密值。 |
字串
約束: 敏感性值。 以安全參數的形式傳入。
|
範本
名字 |
描述 |
價值 |
器皿 |
容器應用程式的容器定義清單。 |
容器[] |
revisionSuffix |
附加至修訂名稱的使用者易記後綴 |
字串 |
規模 |
調整容器應用程式的屬性。 |
調整 |
卷 |
容器應用程式的磁碟區定義清單。 |
磁碟區[] |
容器
EnvironmentVar
名字 |
描述 |
價值 |
名字 |
環境變數名稱。 |
字串 |
secretRef |
要從中提取環境變數值的容器應用程式秘密名稱。 |
字串 |
價值 |
非秘密環境變數值。 |
字串 |
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' |
名字 |
描述 |
價值 |
名字 |
標頭功能變數名稱 |
字串 (必要) |
價值 |
標頭域值 |
字串 (必要) |
ContainerAppProbeTcpSocket
名字 |
描述 |
價值 |
主機 |
選擇性:要連線的主機名,預設為 Pod IP。 |
字串 |
港口 |
要存取容器的埠數目或名稱。 數字必須介於 1 到 65535 的範圍內。 名稱必須是IANA_SVC_NAME。 |
int (必要) |
ContainerResources
名字 |
描述 |
價值 |
中央處理器 |
核心中所需的 CPU,例如 0.5 若要指定十進位值,請使用 json() 函式。 |
int 或 json decimal |
記憶 |
所需的記憶體,例如 “250Mb” |
字串 |
VolumeMount
名字 |
描述 |
價值 |
mountPath |
容器內應掛接磁碟區的路徑。不得包含 『:』。 |
字串 |
volumeName |
這必須符合磁碟區的名稱。 |
字串 |
規模
名字 |
描述 |
價值 |
maxReplicas |
自選。 容器復本的數目上限。 如果未設定,則預設為10。 |
int |
minReplicas |
自選。 容器復本數目下限。 |
int |
規則 |
調整規則。 |
ScaleRule[] |
ScaleRule
QueueScaleRule
名字 |
描述 |
價值 |
認證 |
佇列調整規則的驗證秘密。 |
ScaleRuleAuth[] |
queueLength |
佇列長度。 |
int |
queueName |
佇列名稱。 |
字串 |
ScaleRuleAuth
名字 |
描述 |
價值 |
secretRef |
要從中提取驗證參數的容器應用程式秘密名稱。 |
字串 |
triggerParameter |
使用秘密的觸發程序參數 |
字串 |
CustomScaleRule
HttpScaleRule
卷
名字 |
描述 |
價值 |
名字 |
磁碟區名稱。 |
字串 |
storageName |
記憶體資源的名稱。 不需要提供 EmptyDir。 |
字串 |
storageType |
磁碟區的儲存類型。 如果未提供,請使用 EmptyDir。 |
'AzureFile' 'EmptyDir' |
快速入門範本
下列快速入門範本會部署此資源類型。
containerApps 資源類型可以使用目標作業來部署:
如需每個 API 版本中已變更屬性的清單,請參閱 變更記錄檔。
若要建立 Microsoft.App/containerApps 資源,請將下列 Terraform 新增至範本。
resource "azapi_resource" "symbolicname" {
type = "Microsoft.App/containerApps@2022-01-01-preview"
name = "string"
location = "string"
parent_id = "string"
tags = {
tagName1 = "tagValue1"
tagName2 = "tagValue2"
}
identity {
type = "string"
identity_ids = []
}
body = jsonencode({
properties = {
configuration = {
activeRevisionsMode = "string"
dapr = {
appId = "string"
appPort = int
appProtocol = "string"
enabled = bool
}
ingress = {
allowInsecure = bool
customDomains = [
{
bindingType = "string"
certificateId = "string"
name = "string"
}
]
external = bool
targetPort = int
traffic = [
{
latestRevision = bool
revisionName = "string"
weight = int
}
]
transport = "string"
}
registries = [
{
passwordSecretRef = "string"
server = "string"
username = "string"
}
]
secrets = [
{
name = "string"
value = "string"
}
]
}
managedEnvironmentId = "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 = "decimal-as-string"
memory = "string"
}
volumeMounts = [
{
mountPath = "string"
volumeName = "string"
}
]
}
]
revisionSuffix = "string"
scale = {
maxReplicas = int
minReplicas = int
rules = [
{
azureQueue = {
auth = [
{
secretRef = "string"
triggerParameter = "string"
}
]
queueLength = int
queueName = "string"
}
custom = {
auth = [
{
secretRef = "string"
triggerParameter = "string"
}
]
metadata = {
{customized property} = "string"
}
type = "string"
}
http = {
auth = [
{
secretRef = "string"
triggerParameter = "string"
}
]
metadata = {
{customized property} = "string"
}
}
name = "string"
}
]
}
volumes = [
{
name = "string"
storageName = "string"
storageType = "string"
}
]
}
}
})
}
屬性值
containerApps
名字 |
描述 |
價值 |
類型 |
資源類型 |
“Microsoft.App/containerApps@2022-01-01-preview” |
名字 |
資源名稱 |
字串 (必要)
字元限制:2-32
合法字元: 小寫字母、數位和連字元。。
以字母開頭,並以英數位元結尾。 |
位置 |
資源所在的地理位置 |
字串 (必要) |
parent_id |
若要部署至資源群組,請使用該資源群組的標識碼。 |
字串 (必要) |
標籤 |
資源標籤。 |
標記名稱和值的字典。 |
身份 |
容器應用程式的受控識別可與其他 Azure 服務互動,而不需在程式碼中維護任何秘密或認證。 |
ManagedServiceIdentity |
性能 |
ContainerApp 資源特定屬性 |
ContainerAppProperties |
ManagedServiceIdentity
名字 |
描述 |
價值 |
類型 |
受控服務識別的類型(允許 SystemAssigned 和 UserAssigned 類型)。 |
“SystemAssigned” “SystemAssigned,UserAssigned” “UserAssigned” (必要) |
identity_ids |
與資源相關聯的使用者指派身分識別集。 userAssignedIdentities 字典索引鍵的格式為 ARM 資源標識符:'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}。 字典值可以是要求中的空白物件({})。 |
使用者身分識別標識碼的陣列。 |
UserAssignedIdentities
UserAssignedIdentity
此物件不包含在部署期間設定的任何屬性。 所有屬性都是 ReadOnly。
ContainerAppProperties
名字 |
描述 |
價值 |
配置 |
非版本設定的容器應用程式組態屬性。 |
組態 |
managedEnvironmentId |
容器應用程式環境的資源標識碼。 |
字串 |
範本 |
容器應用程式已建立版本的應用程式定義。 |
範本 |
配置
名字 |
描述 |
價值 |
activeRevisionsMode |
ActiveRevisionsMode 控制容器應用程式的使用中修訂處理方式: {list}{item}多個:多個修訂可以作用中。 如果未提供任何值,則這是預設值{/item}{item}Single:一次只能使用一個修訂。 修訂權數不能用於此模式{/item}{/list} |
“Multiple” “Single” |
dapr |
容器應用程式的 Dapr 組態。 |
達普 |
入口 |
輸入組態。 |
輸入 |
登記處 |
容器應用程式所使用的容器的私人容器登錄認證集合 |
RegistryCredentials[] |
秘密 |
容器應用程式所使用的秘密集合 |
秘密[] |
Dapr
名字 |
描述 |
價值 |
appId |
Dapr 應用程式識別碼 |
字串 |
appPort |
告知 Dapr 您的應用程式正在接聽哪個埠 |
int |
appProtocol |
告知 Dapr 您的應用程式所使用的通訊協定。 有效的選項為 HTTP 和 grpc。 預設值為 HTTP |
“grpc” “http ” |
啟用 |
布爾值,指出 Dapr 側車是否已啟用 |
bool |
入口
名字 |
描述 |
價值 |
allowInsecure |
布爾,指出是否允許 HTTP 連線。 如果設定為 false HTTP 連線,則會自動重新導向至 HTTPS 連線 |
bool |
customDomains |
Container Apps 主機名的自定義網域系結。 |
CustomDomain[] |
外部 |
布爾值,指出應用程式是否公開外部 HTTP 端點 |
bool |
targetPort |
來自輸入流量的容器中目標埠 |
int |
交通 |
應用程式修訂的流量權數 |
TrafficWeight[] |
運輸 |
輸入傳輸通訊協定 |
“auto” “http ” “http2 ” |
CustomDomain
名字 |
描述 |
價值 |
bindingType |
自定義網域系結類型。 |
“Disabled” “SniEnabled” |
certificateId |
要系結至此主機名之憑證的資源標識符。 |
字串 |
名字 |
主機名。 |
字串 (必要) |
TrafficWeight
名字 |
描述 |
價值 |
latestRevision |
表示流量權數屬於最新的穩定修訂 |
bool |
revisionName |
修訂的名稱 |
字串 |
重量 |
指派給修訂的流量權數 |
int |
RegistryCredentials
名字 |
描述 |
價值 |
passwordSecretRef |
包含登錄登入密碼的秘密名稱 |
字串 |
伺服器 |
Container Registry Server |
字串 |
username |
Container Registry 用戶名稱 |
字串 |
秘密
名字 |
描述 |
價值 |
名字 |
秘密名稱。 |
字串 |
價值 |
秘密值。 |
字串
約束: 敏感性值。 以安全參數的形式傳入。
|
範本
名字 |
描述 |
價值 |
器皿 |
容器應用程式的容器定義清單。 |
容器[] |
revisionSuffix |
附加至修訂名稱的使用者易記後綴 |
字串 |
規模 |
調整容器應用程式的屬性。 |
調整 |
卷 |
容器應用程式的磁碟區定義清單。 |
磁碟區[] |
容器
EnvironmentVar
名字 |
描述 |
價值 |
名字 |
環境變數名稱。 |
字串 |
secretRef |
要從中提取環境變數值的容器應用程式秘密名稱。 |
字串 |
價值 |
非秘密環境變數值。 |
字串 |
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” |
名字 |
描述 |
價值 |
名字 |
標頭功能變數名稱 |
字串 (必要) |
價值 |
標頭域值 |
字串 (必要) |
ContainerAppProbeTcpSocket
名字 |
描述 |
價值 |
主機 |
選擇性:要連線的主機名,預設為 Pod IP。 |
字串 |
港口 |
要存取容器的埠數目或名稱。 數字必須介於 1 到 65535 的範圍內。 名稱必須是IANA_SVC_NAME。 |
int (必要) |
ContainerResources
名字 |
描述 |
價值 |
中央處理器 |
核心中必要的 CPU,例如 0.5 將十進位值指定為字串。 |
int 或 json decimal |
記憶 |
所需的記憶體,例如 “250Mb” |
字串 |
VolumeMount
名字 |
描述 |
價值 |
mountPath |
容器內應掛接磁碟區的路徑。不得包含 『:』。 |
字串 |
volumeName |
這必須符合磁碟區的名稱。 |
字串 |
規模
名字 |
描述 |
價值 |
maxReplicas |
自選。 容器復本的數目上限。 如果未設定,則預設為10。 |
int |
minReplicas |
自選。 容器復本數目下限。 |
int |
規則 |
調整規則。 |
ScaleRule[] |
ScaleRule
QueueScaleRule
名字 |
描述 |
價值 |
認證 |
佇列調整規則的驗證秘密。 |
ScaleRuleAuth[] |
queueLength |
佇列長度。 |
int |
queueName |
佇列名稱。 |
字串 |
ScaleRuleAuth
名字 |
描述 |
價值 |
secretRef |
要從中提取驗證參數的容器應用程式秘密名稱。 |
字串 |
triggerParameter |
使用秘密的觸發程序參數 |
字串 |
CustomScaleRule
HttpScaleRule
卷
名字 |
描述 |
價值 |
名字 |
磁碟區名稱。 |
字串 |
storageName |
記憶體資源的名稱。 不需要提供 EmptyDir。 |
字串 |
storageType |
磁碟區的儲存類型。 如果未提供,請使用 EmptyDir。 |
“AzureFile” “EmptyDir” |