你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Microsoft.ContainerInstance containerGroups 2020-11-01

Bicep 资源定义

可以使用目标操作部署 containerGroups 资源类型:

有关每个 API 版本中已更改属性的列表,请参阅 更改日志

资源格式

若要创建 Microsoft.ContainerInstance/containerGroups 资源,请将以下 Bicep 添加到模板。

resource symbolicname 'Microsoft.ContainerInstance/containerGroups@2020-11-01' = {
  identity: {
    type: 'string'
    userAssignedIdentities: {
      {customized property}: {}
    }
  }
  location: 'string'
  name: 'string'
  properties: {
    containers: [
      {
        name: 'string'
        properties: {
          command: [
            'string'
          ]
          environmentVariables: [
            {
              name: 'string'
              secureValue: 'string'
              value: 'string'
            }
          ]
          image: 'string'
          livenessProbe: {
            exec: {
              command: [
                'string'
              ]
            }
            failureThreshold: int
            httpGet: {
              httpHeaders: [
                {
                  name: 'string'
                  value: 'string'
                }
              ]
              path: 'string'
              port: int
              scheme: 'string'
            }
            initialDelaySeconds: int
            periodSeconds: int
            successThreshold: int
            timeoutSeconds: int
          }
          ports: [
            {
              port: int
              protocol: 'string'
            }
          ]
          readinessProbe: {
            exec: {
              command: [
                'string'
              ]
            }
            failureThreshold: int
            httpGet: {
              httpHeaders: [
                {
                  name: 'string'
                  value: 'string'
                }
              ]
              path: 'string'
              port: int
              scheme: 'string'
            }
            initialDelaySeconds: int
            periodSeconds: int
            successThreshold: int
            timeoutSeconds: int
          }
          resources: {
            limits: {
              cpu: int
              gpu: {
                count: int
                sku: 'string'
              }
              memoryInGB: int
            }
            requests: {
              cpu: int
              gpu: {
                count: int
                sku: 'string'
              }
              memoryInGB: int
            }
          }
          volumeMounts: [
            {
              mountPath: 'string'
              name: 'string'
              readOnly: bool
            }
          ]
        }
      }
    ]
    diagnostics: {
      logAnalytics: {
        logType: 'string'
        metadata: {
          {customized property}: 'string'
        }
        workspaceId: 'string'
        workspaceKey: 'string'
        workspaceResourceId: {
          {customized property}: 'string'
        }
      }
    }
    dnsConfig: {
      nameServers: [
        'string'
      ]
      options: 'string'
      searchDomains: 'string'
    }
    encryptionProperties: {
      keyName: 'string'
      keyVersion: 'string'
      vaultBaseUrl: 'string'
    }
    imageRegistryCredentials: [
      {
        password: 'string'
        server: 'string'
        username: 'string'
      }
    ]
    initContainers: [
      {
        name: 'string'
        properties: {
          command: [
            'string'
          ]
          environmentVariables: [
            {
              name: 'string'
              secureValue: 'string'
              value: 'string'
            }
          ]
          image: 'string'
          volumeMounts: [
            {
              mountPath: 'string'
              name: 'string'
              readOnly: bool
            }
          ]
        }
      }
    ]
    ipAddress: {
      dnsNameLabel: 'string'
      ip: 'string'
      ports: [
        {
          port: int
          protocol: 'string'
        }
      ]
      type: 'string'
    }
    networkProfile: {
      id: 'string'
    }
    osType: 'string'
    restartPolicy: 'string'
    sku: 'string'
    volumes: [
      {
        azureFile: {
          readOnly: bool
          shareName: 'string'
          storageAccountKey: 'string'
          storageAccountName: 'string'
        }
        emptyDir: any(Azure.Bicep.Types.Concrete.AnyType)
        gitRepo: {
          directory: 'string'
          repository: 'string'
          revision: 'string'
        }
        name: 'string'
        secret: {
          {customized property}: 'string'
        }
      }
    ]
  }
  tags: {
    {customized property}: 'string'
  }
}

属性值

AzureFileVolume

名字 描述 价值
readOnly 指示装载为卷的 Azure 文件共享是否为只读的标志。 bool
shareName 要装载为卷的 Azure 文件共享的名称。 string (必需)
storageAccountKey 用于访问 Azure 文件共享的存储帐户访问密钥。 字符串
storageAccountName 包含 Azure 文件共享的存储帐户的名称。 string (必需)

Components10Wh5UdSchemasContainergroupidentityPropertiesUserassignedidentitiesAdditionalproperties

名字 描述 价值

容器

名字 描述 价值
名字 容器实例的用户提供的名称。 string (必需)
性能 容器实例的属性。 ContainerProperties (必需)

ContainerExec

名字 描述 价值
命令 在容器中执行的命令。 string[]

ContainerGroupDiagnostics

名字 描述 价值
logAnalytics 容器组日志分析信息。 LogAnalytics

ContainerGroupIdentity

名字 描述 价值
类型 用于容器组的标识类型。 类型“SystemAssigned,UserAssigned”包括隐式创建的标识和一组用户分配的标识。 类型“None”将从容器组中删除任何标识。 “None”
“SystemAssigned”
“SystemAssigned,UserAssigned”
“UserAssigned”
userAssignedIdentities 与容器组关联的用户标识列表。 用户标识字典密钥引用的格式为 ARM 资源 ID:“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}”。 ContainerGroupIdentityUserAssignedIdentities

ContainerGroupIdentityUserAssignedIdentities

名字 描述 价值

ContainerGroupNetworkProfile

名字 描述 价值
id 网络配置文件的标识符。 string (必需)

ContainerGroupProperties

名字 描述 价值
器皿 容器组中的容器。 容器[] (必需)
诊断 容器组的诊断信息。 ContainerGroupDiagnostics
dnsConfig 容器组的 DNS 配置信息。 DnsConfiguration
encryptionProperties 容器组的加密属性。 EncryptionProperties
imageRegistryCredentials 从中创建容器组的映像注册表凭据。 ImageRegistryCredential[]
initContainers 容器组的初始化容器。 InitContainerDefinition[]
ipAddress 容器组的 IP 地址类型。 IpAddress
networkProfile 容器组的网络配置文件信息。 ContainerGroupNetworkProfile
osType 容器组中容器所需的操作系统类型。 “Linux”
“Windows”(必需)
restartPolicy 重启容器组中所有容器的策略。
- Always 始终重启
- OnFailure 失败时重启
- Never 永不重启
“Always”
“永不”
“OnFailure”
sku 容器组的 SKU。 “专用”
“Standard”
此容器组中的容器可以装载的卷列表。 []

ContainerHttpGet

名字 描述 价值
httpHeaders HTTP 标头。 HttpHeader[]
路径 探测的路径。 字符串
港口 要探测的端口号。 int (必需)
方案 方案。 “http”
“https”

ContainerPort

名字 描述 价值
港口 容器组中公开的端口号。 int (必需)
协议 与端口关联的协议。 “TCP”
“UDP”

ContainerProbe

名字 描述 价值
exec 要探测的执行命令 ContainerExec
failureThreshold 失败阈值。 int
httpGet 要探测的 Http 获取设置 ContainerHttpGet
initialDelaySeconds 初始延迟秒。 int
periodSeconds 时间段秒。 int
successThreshold 成功阈值。 int
timeoutSeconds 超时秒。 int

ContainerProperties

名字 描述 价值
命令 要以 exec 形式在容器实例中执行的命令。 string[]
environmentVariables 在容器实例中设置的环境变量。 EnvironmentVariable[]
图像 用于创建容器实例的映像的名称。 string (必需)
livenessProbe 生存度探测。 ContainerProbe
港口 容器实例上公开的端口。 ContainerPort[]
readinessProbe 就绪情况探测。 ContainerProbe
资源 容器实例的资源要求。 ResourceRequirements (必需)
volumeMounts 卷装载可用于容器实例。 VolumeMount[]

DnsConfiguration

名字 描述 价值
nameServers 容器组的 DNS 服务器。 string[] (必需)
选项 容器组的 DNS 选项。 字符串
searchDomains 用于在容器组中查找主机名的 DNS 搜索域。 字符串

EncryptionProperties

名字 描述 价值
keyName 加密密钥名称。 string (必需)
keyVersion 加密密钥版本。 string (必需)
vaultBaseUrl keyvault 基 URL。 string (必需)

EnvironmentVariable

名字 描述 价值
名字 环境变量的名称。 string (必需)
secureValue 安全环境变量的值。 字符串
价值 环境变量的值。 字符串

GitRepoVolume

名字 描述 价值
目录 目标目录名称。 不得包含或以“..”开头。 如果提供了“.”,卷目录将是 git 存储库。 否则,如果指定,卷将包含具有给定名称的子目录中的 git 存储库。 字符串
存储 库 存储库 URL string (必需)
校订 指定修订的提交哈希。 字符串

GpuResource

名字 描述 价值
计数 GPU 资源的计数。 int (必需)
sku GPU 资源的 SKU。 “K80”
“P100”
“V100”(必需)

HttpHeader

名字 描述 价值
名字 标头名称。 字符串
价值 标头值。 字符串

ImageRegistryCredential

名字 描述 价值
密码 专用注册表的密码。 字符串
服务器 没有协议(如“http”和“https”)的 Docker 映像注册表服务器。 string (必需)
username 专用注册表的用户名。 string (必需)

InitContainerDefinition

名字 描述 价值
名字 init 容器的名称。 string (必需)
性能 init 容器的属性。 InitContainerPropertiesDefinition (必需)

InitContainerPropertiesDefinition

名字 描述 价值
命令 要以 exec 形式在 init 容器中执行的命令。 string[]
environmentVariables 在 init 容器中设置的环境变量。 EnvironmentVariable[]
图像 init 容器的图像。 字符串
volumeMounts 可用于 init 容器的卷装载。 VolumeMount[]

IpAddress

名字 描述 价值
dnsNameLabel IP 的 Dns 名称标签。 字符串
ip 公开给公共 Internet 的 IP。 字符串
港口 容器组上公开的端口列表。 端口[] (必需)
类型 指定 IP 是否向公共 Internet 或专用 VNET 公开。 “Private”
“Public”(必需)

LogAnalytics

名字 描述 价值
logType 要使用的日志类型。 “ContainerInsights”
'ContainerInstanceLogs'
元数据 日志分析的元数据。 LogAnalyticsMetadata
workspaceId Log Analytics 的工作区 ID string (必需)
workspaceKey Log Analytics 的工作区密钥 string (必需)
workspaceResourceId Log Analytics 的工作区资源 ID LogAnalyticsWorkspaceResourceId

LogAnalyticsMetadata

名字 描述 价值

LogAnalyticsWorkspaceResourceId

名字 描述 价值

Microsoft.ContainerInstance/containerGroups

名字 描述 价值
身份 容器组的标识(如果已配置)。 ContainerGroupIdentity
位置 资源位置。 字符串
名字 资源名称 string (必需)
性能 容器组属性 ContainerGroupProperties(必需)
标签 资源标记 标记名称和值的字典。 请参阅模板 中的 标记

港口

名字 描述 价值
港口 端口号。 int (必需)
协议 与端口关联的协议。 “TCP”
“UDP”

ResourceLimits

名字 描述 价值
中央处理器 此容器实例的 CPU 限制。 int
gpu 此容器实例的 GPU 限制。 GpuResource
memoryInGB 此容器实例的内存限制(以 GB 为单位)。 int

ResourceRequests

名字 描述 价值
中央处理器 此容器实例的 CPU 请求。 int (必需)
gpu 此容器实例的 GPU 请求。 GpuResource
memoryInGB 此容器实例的内存请求(以 GB 为单位)。 int (必需)

ResourceRequirements

名字 描述 价值
限制 此容器实例的资源限制。 ResourceLimits
请求 此容器实例的资源请求。 ResourceRequests (必需)

ResourceTags

名字 描述 价值

SecretVolume

名字 描述 价值

名字 描述 价值
azureFile Azure 文件卷。 AzureFileVolume
emptyDir 空目录卷。 任何
gitRepo git 存储库卷。 GitRepoVolume
名字 卷的名称。 string (必需)
秘密 机密卷。 SecretVolume

VolumeMount

名字 描述 价值
mountPath 应装载卷的容器中的路径。 不得包含冒号 (:)。 string (必需)
名字 卷装载的名称。 string (必需)
readOnly 指示卷装载是否为只读的标志。 bool

快速入门示例

以下快速入门示例部署此资源类型。

Bicep 文件 描述
Azure 容器实例 - BC 与 SQL Server 和 IIS 在 Azure 容器实例上部署具有功能齐全的独立Microsoft Dynamics 365 Business Central 环境的单个 Windows 容器。
Azure 容器实例 - 包含机密的容器 使用 Azure 容器实例部署具有机密卷的 Linux 容器。
Azure 容器实例 - 具有公共 IP 的 Linux 容器 使用 Azure 容器实例部署可通过公共 IP 访问的单个 Linux 容器。
Azure 容器实例 - VNet 将容器实例部署到 Azure 虚拟网络。
创建 WordPress 网站 此模板在容器实例上创建 WordPress 站点
创建具有持久性存储 的按需 SFTP 服务器 此模板演示使用 Azure 容器实例(ACI)的按需 SFTP 服务器。
使用证书创建应用程序网关 此模板演示如何生成 Key Vault 自签名证书,然后从应用程序网关引用。
使用 Azure 容器实例 Front Door 标准版/高级版 此模板使用容器组创建 Front Door 标准版/高级版。
使用容器实例和应用程序网关 Front Door 此模板使用容器组和应用程序网关创建 Front Door 标准版/高级版。
AKS 上的 SQL Server 可用性组 这会创建新的 AKS 群集,然后使用使用 Duffle 和 ACI 部署的 CNAB 包将 SQL Server 可用性组部署到其中

ARM 模板资源定义

可以使用目标操作部署 containerGroups 资源类型:

有关每个 API 版本中已更改属性的列表,请参阅 更改日志

资源格式

若要创建 Microsoft.ContainerInstance/containerGroups 资源,请将以下 JSON 添加到模板。

{
  "type": "Microsoft.ContainerInstance/containerGroups",
  "apiVersion": "2020-11-01",
  "name": "string",
  "identity": {
    "type": "string",
    "userAssignedIdentities": {
      "{customized property}": {
      }
    }
  },
  "location": "string",
  "properties": {
    "containers": [
      {
        "name": "string",
        "properties": {
          "command": [ "string" ],
          "environmentVariables": [
            {
              "name": "string",
              "secureValue": "string",
              "value": "string"
            }
          ],
          "image": "string",
          "livenessProbe": {
            "exec": {
              "command": [ "string" ]
            },
            "failureThreshold": "int",
            "httpGet": {
              "httpHeaders": [
                {
                  "name": "string",
                  "value": "string"
                }
              ],
              "path": "string",
              "port": "int",
              "scheme": "string"
            },
            "initialDelaySeconds": "int",
            "periodSeconds": "int",
            "successThreshold": "int",
            "timeoutSeconds": "int"
          },
          "ports": [
            {
              "port": "int",
              "protocol": "string"
            }
          ],
          "readinessProbe": {
            "exec": {
              "command": [ "string" ]
            },
            "failureThreshold": "int",
            "httpGet": {
              "httpHeaders": [
                {
                  "name": "string",
                  "value": "string"
                }
              ],
              "path": "string",
              "port": "int",
              "scheme": "string"
            },
            "initialDelaySeconds": "int",
            "periodSeconds": "int",
            "successThreshold": "int",
            "timeoutSeconds": "int"
          },
          "resources": {
            "limits": {
              "cpu": "int",
              "gpu": {
                "count": "int",
                "sku": "string"
              },
              "memoryInGB": "int"
            },
            "requests": {
              "cpu": "int",
              "gpu": {
                "count": "int",
                "sku": "string"
              },
              "memoryInGB": "int"
            }
          },
          "volumeMounts": [
            {
              "mountPath": "string",
              "name": "string",
              "readOnly": "bool"
            }
          ]
        }
      }
    ],
    "diagnostics": {
      "logAnalytics": {
        "logType": "string",
        "metadata": {
          "{customized property}": "string"
        },
        "workspaceId": "string",
        "workspaceKey": "string",
        "workspaceResourceId": {
          "{customized property}": "string"
        }
      }
    },
    "dnsConfig": {
      "nameServers": [ "string" ],
      "options": "string",
      "searchDomains": "string"
    },
    "encryptionProperties": {
      "keyName": "string",
      "keyVersion": "string",
      "vaultBaseUrl": "string"
    },
    "imageRegistryCredentials": [
      {
        "password": "string",
        "server": "string",
        "username": "string"
      }
    ],
    "initContainers": [
      {
        "name": "string",
        "properties": {
          "command": [ "string" ],
          "environmentVariables": [
            {
              "name": "string",
              "secureValue": "string",
              "value": "string"
            }
          ],
          "image": "string",
          "volumeMounts": [
            {
              "mountPath": "string",
              "name": "string",
              "readOnly": "bool"
            }
          ]
        }
      }
    ],
    "ipAddress": {
      "dnsNameLabel": "string",
      "ip": "string",
      "ports": [
        {
          "port": "int",
          "protocol": "string"
        }
      ],
      "type": "string"
    },
    "networkProfile": {
      "id": "string"
    },
    "osType": "string",
    "restartPolicy": "string",
    "sku": "string",
    "volumes": [
      {
        "azureFile": {
          "readOnly": "bool",
          "shareName": "string",
          "storageAccountKey": "string",
          "storageAccountName": "string"
        },
        "emptyDir": {},
        "gitRepo": {
          "directory": "string",
          "repository": "string",
          "revision": "string"
        },
        "name": "string",
        "secret": {
          "{customized property}": "string"
        }
      }
    ]
  },
  "tags": {
    "{customized property}": "string"
  }
}

属性值

AzureFileVolume

名字 描述 价值
readOnly 指示装载为卷的 Azure 文件共享是否为只读的标志。 bool
shareName 要装载为卷的 Azure 文件共享的名称。 string (必需)
storageAccountKey 用于访问 Azure 文件共享的存储帐户访问密钥。 字符串
storageAccountName 包含 Azure 文件共享的存储帐户的名称。 string (必需)

Components10Wh5UdSchemasContainergroupidentityPropertiesUserassignedidentitiesAdditionalproperties

名字 描述 价值

容器

名字 描述 价值
名字 容器实例的用户提供的名称。 string (必需)
性能 容器实例的属性。 ContainerProperties (必需)

ContainerExec

名字 描述 价值
命令 在容器中执行的命令。 string[]

ContainerGroupDiagnostics

名字 描述 价值
logAnalytics 容器组日志分析信息。 LogAnalytics

ContainerGroupIdentity

名字 描述 价值
类型 用于容器组的标识类型。 类型“SystemAssigned,UserAssigned”包括隐式创建的标识和一组用户分配的标识。 类型“None”将从容器组中删除任何标识。 “None”
“SystemAssigned”
“SystemAssigned,UserAssigned”
“UserAssigned”
userAssignedIdentities 与容器组关联的用户标识列表。 用户标识字典密钥引用的格式为 ARM 资源 ID:“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}”。 ContainerGroupIdentityUserAssignedIdentities

ContainerGroupIdentityUserAssignedIdentities

名字 描述 价值

ContainerGroupNetworkProfile

名字 描述 价值
id 网络配置文件的标识符。 string (必需)

ContainerGroupProperties

名字 描述 价值
器皿 容器组中的容器。 容器[] (必需)
诊断 容器组的诊断信息。 ContainerGroupDiagnostics
dnsConfig 容器组的 DNS 配置信息。 DnsConfiguration
encryptionProperties 容器组的加密属性。 EncryptionProperties
imageRegistryCredentials 从中创建容器组的映像注册表凭据。 ImageRegistryCredential[]
initContainers 容器组的初始化容器。 InitContainerDefinition[]
ipAddress 容器组的 IP 地址类型。 IpAddress
networkProfile 容器组的网络配置文件信息。 ContainerGroupNetworkProfile
osType 容器组中容器所需的操作系统类型。 “Linux”
“Windows”(必需)
restartPolicy 重启容器组中所有容器的策略。
- Always 始终重启
- OnFailure 失败时重启
- Never 永不重启
“Always”
“永不”
“OnFailure”
sku 容器组的 SKU。 “专用”
“Standard”
此容器组中的容器可以装载的卷列表。 []

ContainerHttpGet

名字 描述 价值
httpHeaders HTTP 标头。 HttpHeader[]
路径 探测的路径。 字符串
港口 要探测的端口号。 int (必需)
方案 方案。 “http”
“https”

ContainerPort

名字 描述 价值
港口 容器组中公开的端口号。 int (必需)
协议 与端口关联的协议。 “TCP”
“UDP”

ContainerProbe

名字 描述 价值
exec 要探测的执行命令 ContainerExec
failureThreshold 失败阈值。 int
httpGet 要探测的 Http 获取设置 ContainerHttpGet
initialDelaySeconds 初始延迟秒。 int
periodSeconds 时间段秒。 int
successThreshold 成功阈值。 int
timeoutSeconds 超时秒。 int

ContainerProperties

名字 描述 价值
命令 要以 exec 形式在容器实例中执行的命令。 string[]
environmentVariables 在容器实例中设置的环境变量。 EnvironmentVariable[]
图像 用于创建容器实例的映像的名称。 string (必需)
livenessProbe 生存度探测。 ContainerProbe
港口 容器实例上公开的端口。 ContainerPort[]
readinessProbe 就绪情况探测。 ContainerProbe
资源 容器实例的资源要求。 ResourceRequirements (必需)
volumeMounts 卷装载可用于容器实例。 VolumeMount[]

DnsConfiguration

名字 描述 价值
nameServers 容器组的 DNS 服务器。 string[] (必需)
选项 容器组的 DNS 选项。 字符串
searchDomains 用于在容器组中查找主机名的 DNS 搜索域。 字符串

EncryptionProperties

名字 描述 价值
keyName 加密密钥名称。 string (必需)
keyVersion 加密密钥版本。 string (必需)
vaultBaseUrl keyvault 基 URL。 string (必需)

EnvironmentVariable

名字 描述 价值
名字 环境变量的名称。 string (必需)
secureValue 安全环境变量的值。 字符串
价值 环境变量的值。 字符串

GitRepoVolume

名字 描述 价值
目录 目标目录名称。 不得包含或以“..”开头。 如果提供了“.”,卷目录将是 git 存储库。 否则,如果指定,卷将包含具有给定名称的子目录中的 git 存储库。 字符串
存储 库 存储库 URL string (必需)
校订 指定修订的提交哈希。 字符串

GpuResource

名字 描述 价值
计数 GPU 资源的计数。 int (必需)
sku GPU 资源的 SKU。 “K80”
“P100”
“V100”(必需)

HttpHeader

名字 描述 价值
名字 标头名称。 字符串
价值 标头值。 字符串

ImageRegistryCredential

名字 描述 价值
密码 专用注册表的密码。 字符串
服务器 没有协议(如“http”和“https”)的 Docker 映像注册表服务器。 string (必需)
username 专用注册表的用户名。 string (必需)

InitContainerDefinition

名字 描述 价值
名字 init 容器的名称。 string (必需)
性能 init 容器的属性。 InitContainerPropertiesDefinition (必需)

InitContainerPropertiesDefinition

名字 描述 价值
命令 要以 exec 形式在 init 容器中执行的命令。 string[]
environmentVariables 在 init 容器中设置的环境变量。 EnvironmentVariable[]
图像 init 容器的图像。 字符串
volumeMounts 可用于 init 容器的卷装载。 VolumeMount[]

IpAddress

名字 描述 价值
dnsNameLabel IP 的 Dns 名称标签。 字符串
ip 公开给公共 Internet 的 IP。 字符串
港口 容器组上公开的端口列表。 端口[] (必需)
类型 指定 IP 是否向公共 Internet 或专用 VNET 公开。 “Private”
“Public”(必需)

LogAnalytics

名字 描述 价值
logType 要使用的日志类型。 “ContainerInsights”
'ContainerInstanceLogs'
元数据 日志分析的元数据。 LogAnalyticsMetadata
workspaceId Log Analytics 的工作区 ID string (必需)
workspaceKey Log Analytics 的工作区密钥 string (必需)
workspaceResourceId Log Analytics 的工作区资源 ID LogAnalyticsWorkspaceResourceId

LogAnalyticsMetadata

名字 描述 价值

LogAnalyticsWorkspaceResourceId

名字 描述 价值

Microsoft.ContainerInstance/containerGroups

名字 描述 价值
apiVersion API 版本 '2020-11-01'
身份 容器组的标识(如果已配置)。 ContainerGroupIdentity
位置 资源位置。 字符串
名字 资源名称 string (必需)
性能 容器组属性 ContainerGroupProperties(必需)
标签 资源标记 标记名称和值的字典。 请参阅模板 中的 标记
类型 资源类型 “Microsoft.ContainerInstance/containerGroups”

港口

名字 描述 价值
港口 端口号。 int (必需)
协议 与端口关联的协议。 “TCP”
“UDP”

ResourceLimits

名字 描述 价值
中央处理器 此容器实例的 CPU 限制。 int
gpu 此容器实例的 GPU 限制。 GpuResource
memoryInGB 此容器实例的内存限制(以 GB 为单位)。 int

ResourceRequests

名字 描述 价值
中央处理器 此容器实例的 CPU 请求。 int (必需)
gpu 此容器实例的 GPU 请求。 GpuResource
memoryInGB 此容器实例的内存请求(以 GB 为单位)。 int (必需)

ResourceRequirements

名字 描述 价值
限制 此容器实例的资源限制。 ResourceLimits
请求 此容器实例的资源请求。 ResourceRequests (必需)

ResourceTags

名字 描述 价值

SecretVolume

名字 描述 价值

名字 描述 价值
azureFile Azure 文件卷。 AzureFileVolume
emptyDir 空目录卷。 任何
gitRepo git 存储库卷。 GitRepoVolume
名字 卷的名称。 string (必需)
秘密 机密卷。 SecretVolume

VolumeMount

名字 描述 价值
mountPath 应装载卷的容器中的路径。 不得包含冒号 (:)。 string (必需)
名字 卷装载的名称。 string (必需)
readOnly 指示卷装载是否为只读的标志。 bool

快速入门模板

以下快速入门模板部署此资源类型。

模板 描述
Azure 容器实例 - BC 与 SQL Server 和 IIS

部署到 Azure
在 Azure 容器实例上部署具有功能齐全的独立Microsoft Dynamics 365 Business Central 环境的单个 Windows 容器。
Azure 容器实例 - 具有运行状况探测的容器

部署到 Azure
使用 Azure 容器实例部署具有运行状况探测的 Linux 容器。
Azure 容器实例 - 包含机密的容器

部署到 Azure
使用 Azure 容器实例部署具有机密卷的 Linux 容器。
Azure 容器实例 - 具有安全 envVar 的容器

部署到 Azure
使用 Azure 容器实例部署具有安全环境变量的 Linux 容器。
Azure 容器实例 - 具有 emptyDir 的 Linux 容器

部署到 Azure
部署两个使用 Azure 容器实例共享 emptyDir 卷的 Linux 容器。
Azure 容器实例 - 具有 gitRepo 的 Linux 容器

部署到 Azure
使用 Azure 容器实例部署使用 gitRepo 卷的 Linux 容器。
Azure 容器实例 - 具有公共 IP 的 Linux 容器

部署到 Azure
使用 Azure 容器实例部署可通过公共 IP 访问的单个 Linux 容器。
Azure 容器实例 - VNet

部署到 Azure
将容器实例部署到 Azure 虚拟网络。
通过容器创建存储帐户文件共享

部署到 Azure
此模板通过容器实例中的 azure-cli 创建存储帐户和文件共享
创建 WordPress 网站

部署到 Azure
此模板在容器实例上创建 WordPress 站点
在虚拟网络中创建 WordPress 站点

部署到 Azure
此模板在虚拟网络中的容器实例上创建 WordPress 站点。 并输出可访问 WordPress 站点的公共站点 FQDN。
创建具有持久性存储 的按需 SFTP 服务器

部署到 Azure
此模板演示使用 Azure 容器实例(ACI)的按需 SFTP 服务器。
使用证书创建应用程序网关

部署到 Azure
此模板演示如何生成 Key Vault 自签名证书,然后从应用程序网关引用。
使用 Azure 容器实例 Front Door 标准版/高级版

部署到 Azure
此模板使用容器组创建 Front Door 标准版/高级版。
使用容器实例和应用程序网关 Front Door

部署到 Azure
此模板使用容器组和应用程序网关创建 Front Door 标准版/高级版。
使用现有存储帐户 按需 SFTP 服务器

部署到 Azure
此模板演示使用 Azure 容器实例(ACI)的按需 SFTP 服务器。
AKS 上的 SQL Server 可用性组

部署到 Azure
这会创建新的 AKS 群集,然后使用使用 Duffle 和 ACI 部署的 CNAB 包将 SQL Server 可用性组部署到其中
ACI 中的 UDP 容器

部署到 Azure
此模板创建 ACI 资源并通过 UDP 公开容器

Terraform (AzAPI 提供程序)资源定义

可以使用目标操作部署 containerGroups 资源类型:

  • 资源组

有关每个 API 版本中已更改属性的列表,请参阅 更改日志

资源格式

若要创建 Microsoft.ContainerInstance/containerGroups 资源,请将以下 Terraform 添加到模板。

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.ContainerInstance/containerGroups@2020-11-01"
  name = "string"
  identity = {
    type = "string"
    userAssignedIdentities = {
      {customized property} = {
      }
    }
  }
  location = "string"
  tags = {
    {customized property} = "string"
  }
  body = jsonencode({
    properties = {
      containers = [
        {
          name = "string"
          properties = {
            command = [
              "string"
            ]
            environmentVariables = [
              {
                name = "string"
                secureValue = "string"
                value = "string"
              }
            ]
            image = "string"
            livenessProbe = {
              exec = {
                command = [
                  "string"
                ]
              }
              failureThreshold = int
              httpGet = {
                httpHeaders = [
                  {
                    name = "string"
                    value = "string"
                  }
                ]
                path = "string"
                port = int
                scheme = "string"
              }
              initialDelaySeconds = int
              periodSeconds = int
              successThreshold = int
              timeoutSeconds = int
            }
            ports = [
              {
                port = int
                protocol = "string"
              }
            ]
            readinessProbe = {
              exec = {
                command = [
                  "string"
                ]
              }
              failureThreshold = int
              httpGet = {
                httpHeaders = [
                  {
                    name = "string"
                    value = "string"
                  }
                ]
                path = "string"
                port = int
                scheme = "string"
              }
              initialDelaySeconds = int
              periodSeconds = int
              successThreshold = int
              timeoutSeconds = int
            }
            resources = {
              limits = {
                cpu = int
                gpu = {
                  count = int
                  sku = "string"
                }
                memoryInGB = int
              }
              requests = {
                cpu = int
                gpu = {
                  count = int
                  sku = "string"
                }
                memoryInGB = int
              }
            }
            volumeMounts = [
              {
                mountPath = "string"
                name = "string"
                readOnly = bool
              }
            ]
          }
        }
      ]
      diagnostics = {
        logAnalytics = {
          logType = "string"
          metadata = {
            {customized property} = "string"
          }
          workspaceId = "string"
          workspaceKey = "string"
          workspaceResourceId = {
            {customized property} = "string"
          }
        }
      }
      dnsConfig = {
        nameServers = [
          "string"
        ]
        options = "string"
        searchDomains = "string"
      }
      encryptionProperties = {
        keyName = "string"
        keyVersion = "string"
        vaultBaseUrl = "string"
      }
      imageRegistryCredentials = [
        {
          password = "string"
          server = "string"
          username = "string"
        }
      ]
      initContainers = [
        {
          name = "string"
          properties = {
            command = [
              "string"
            ]
            environmentVariables = [
              {
                name = "string"
                secureValue = "string"
                value = "string"
              }
            ]
            image = "string"
            volumeMounts = [
              {
                mountPath = "string"
                name = "string"
                readOnly = bool
              }
            ]
          }
        }
      ]
      ipAddress = {
        dnsNameLabel = "string"
        ip = "string"
        ports = [
          {
            port = int
            protocol = "string"
          }
        ]
        type = "string"
      }
      networkProfile = {
        id = "string"
      }
      osType = "string"
      restartPolicy = "string"
      sku = "string"
      volumes = [
        {
          azureFile = {
            readOnly = bool
            shareName = "string"
            storageAccountKey = "string"
            storageAccountName = "string"
          }
          emptyDir = ?
          gitRepo = {
            directory = "string"
            repository = "string"
            revision = "string"
          }
          name = "string"
          secret = {
            {customized property} = "string"
          }
        }
      ]
    }
  })
}

属性值

AzureFileVolume

名字 描述 价值
readOnly 指示装载为卷的 Azure 文件共享是否为只读的标志。 bool
shareName 要装载为卷的 Azure 文件共享的名称。 string (必需)
storageAccountKey 用于访问 Azure 文件共享的存储帐户访问密钥。 字符串
storageAccountName 包含 Azure 文件共享的存储帐户的名称。 string (必需)

Components10Wh5UdSchemasContainergroupidentityPropertiesUserassignedidentitiesAdditionalproperties

名字 描述 价值

容器

名字 描述 价值
名字 容器实例的用户提供的名称。 string (必需)
性能 容器实例的属性。 ContainerProperties (必需)

ContainerExec

名字 描述 价值
命令 在容器中执行的命令。 string[]

ContainerGroupDiagnostics

名字 描述 价值
logAnalytics 容器组日志分析信息。 LogAnalytics

ContainerGroupIdentity

名字 描述 价值
类型 用于容器组的标识类型。 类型“SystemAssigned,UserAssigned”包括隐式创建的标识和一组用户分配的标识。 类型“None”将从容器组中删除任何标识。 “None”
“SystemAssigned”
“SystemAssigned,UserAssigned”
“UserAssigned”
userAssignedIdentities 与容器组关联的用户标识列表。 用户标识字典密钥引用的格式为 ARM 资源 ID:“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}”。 ContainerGroupIdentityUserAssignedIdentities

ContainerGroupIdentityUserAssignedIdentities

名字 描述 价值

ContainerGroupNetworkProfile

名字 描述 价值
id 网络配置文件的标识符。 string (必需)

ContainerGroupProperties

名字 描述 价值
器皿 容器组中的容器。 容器[] (必需)
诊断 容器组的诊断信息。 ContainerGroupDiagnostics
dnsConfig 容器组的 DNS 配置信息。 DnsConfiguration
encryptionProperties 容器组的加密属性。 EncryptionProperties
imageRegistryCredentials 从中创建容器组的映像注册表凭据。 ImageRegistryCredential[]
initContainers 容器组的初始化容器。 InitContainerDefinition[]
ipAddress 容器组的 IP 地址类型。 IpAddress
networkProfile 容器组的网络配置文件信息。 ContainerGroupNetworkProfile
osType 容器组中容器所需的操作系统类型。 “Linux”
“Windows”(必需)
restartPolicy 重启容器组中所有容器的策略。
- Always 始终重启
- OnFailure 失败时重启
- Never 永不重启
“Always”
“永不”
“OnFailure”
sku 容器组的 SKU。 “专用”
“Standard”
此容器组中的容器可以装载的卷列表。 []

ContainerHttpGet

名字 描述 价值
httpHeaders HTTP 标头。 HttpHeader[]
路径 探测的路径。 字符串
港口 要探测的端口号。 int (必需)
方案 方案。 “http”
“https”

ContainerPort

名字 描述 价值
港口 容器组中公开的端口号。 int (必需)
协议 与端口关联的协议。 “TCP”
“UDP”

ContainerProbe

名字 描述 价值
exec 要探测的执行命令 ContainerExec
failureThreshold 失败阈值。 int
httpGet 要探测的 Http 获取设置 ContainerHttpGet
initialDelaySeconds 初始延迟秒。 int
periodSeconds 时间段秒。 int
successThreshold 成功阈值。 int
timeoutSeconds 超时秒。 int

ContainerProperties

名字 描述 价值
命令 要以 exec 形式在容器实例中执行的命令。 string[]
environmentVariables 在容器实例中设置的环境变量。 EnvironmentVariable[]
图像 用于创建容器实例的映像的名称。 string (必需)
livenessProbe 生存度探测。 ContainerProbe
港口 容器实例上公开的端口。 ContainerPort[]
readinessProbe 就绪情况探测。 ContainerProbe
资源 容器实例的资源要求。 ResourceRequirements (必需)
volumeMounts 卷装载可用于容器实例。 VolumeMount[]

DnsConfiguration

名字 描述 价值
nameServers 容器组的 DNS 服务器。 string[] (必需)
选项 容器组的 DNS 选项。 字符串
searchDomains 用于在容器组中查找主机名的 DNS 搜索域。 字符串

EncryptionProperties

名字 描述 价值
keyName 加密密钥名称。 string (必需)
keyVersion 加密密钥版本。 string (必需)
vaultBaseUrl keyvault 基 URL。 string (必需)

EnvironmentVariable

名字 描述 价值
名字 环境变量的名称。 string (必需)
secureValue 安全环境变量的值。 字符串
价值 环境变量的值。 字符串

GitRepoVolume

名字 描述 价值
目录 目标目录名称。 不得包含或以“..”开头。 如果提供了“.”,卷目录将是 git 存储库。 否则,如果指定,卷将包含具有给定名称的子目录中的 git 存储库。 字符串
存储 库 存储库 URL string (必需)
校订 指定修订的提交哈希。 字符串

GpuResource

名字 描述 价值
计数 GPU 资源的计数。 int (必需)
sku GPU 资源的 SKU。 “K80”
“P100”
“V100”(必需)

HttpHeader

名字 描述 价值
名字 标头名称。 字符串
价值 标头值。 字符串

ImageRegistryCredential

名字 描述 价值
密码 专用注册表的密码。 字符串
服务器 没有协议(如“http”和“https”)的 Docker 映像注册表服务器。 string (必需)
username 专用注册表的用户名。 string (必需)

InitContainerDefinition

名字 描述 价值
名字 init 容器的名称。 string (必需)
性能 init 容器的属性。 InitContainerPropertiesDefinition (必需)

InitContainerPropertiesDefinition

名字 描述 价值
命令 要以 exec 形式在 init 容器中执行的命令。 string[]
environmentVariables 在 init 容器中设置的环境变量。 EnvironmentVariable[]
图像 init 容器的图像。 字符串
volumeMounts 可用于 init 容器的卷装载。 VolumeMount[]

IpAddress

名字 描述 价值
dnsNameLabel IP 的 Dns 名称标签。 字符串
ip 公开给公共 Internet 的 IP。 字符串
港口 容器组上公开的端口列表。 端口[] (必需)
类型 指定 IP 是否向公共 Internet 或专用 VNET 公开。 “Private”
“Public”(必需)

LogAnalytics

名字 描述 价值
logType 要使用的日志类型。 “ContainerInsights”
'ContainerInstanceLogs'
元数据 日志分析的元数据。 LogAnalyticsMetadata
workspaceId Log Analytics 的工作区 ID string (必需)
workspaceKey Log Analytics 的工作区密钥 string (必需)
workspaceResourceId Log Analytics 的工作区资源 ID LogAnalyticsWorkspaceResourceId

LogAnalyticsMetadata

名字 描述 价值

LogAnalyticsWorkspaceResourceId

名字 描述 价值

Microsoft.ContainerInstance/containerGroups

名字 描述 价值
身份 容器组的标识(如果已配置)。 ContainerGroupIdentity
位置 资源位置。 字符串
名字 资源名称 string (必需)
性能 容器组属性 ContainerGroupProperties(必需)
标签 资源标记 标记名称和值的字典。
类型 资源类型 “Microsoft.ContainerInstance/containerGroups@2020-11-01”

港口

名字 描述 价值
港口 端口号。 int (必需)
协议 与端口关联的协议。 “TCP”
“UDP”

ResourceLimits

名字 描述 价值
中央处理器 此容器实例的 CPU 限制。 int
gpu 此容器实例的 GPU 限制。 GpuResource
memoryInGB 此容器实例的内存限制(以 GB 为单位)。 int

ResourceRequests

名字 描述 价值
中央处理器 此容器实例的 CPU 请求。 int (必需)
gpu 此容器实例的 GPU 请求。 GpuResource
memoryInGB 此容器实例的内存请求(以 GB 为单位)。 int (必需)

ResourceRequirements

名字 描述 价值
限制 此容器实例的资源限制。 ResourceLimits
请求 此容器实例的资源请求。 ResourceRequests (必需)

ResourceTags

名字 描述 价值

SecretVolume

名字 描述 价值

名字 描述 价值
azureFile Azure 文件卷。 AzureFileVolume
emptyDir 空目录卷。 任何
gitRepo git 存储库卷。 GitRepoVolume
名字 卷的名称。 string (必需)
秘密 机密卷。 SecretVolume

VolumeMount

名字 描述 价值
mountPath 应装载卷的容器中的路径。 不得包含冒号 (:)。 string (必需)
名字 卷装载的名称。 string (必需)
readOnly 指示卷装载是否为只读的标志。 bool