В этой статье описывается синтаксис и свойства файла YAML, поддерживаемого экземплярами контейнеров Azure при настройке группы контейнеров. Используйте файл YAML для ввода конфигурации группы в команду az container create в Azure CLI.
Файл YAML — это удобный способ настройки группы контейнеров для воспроизводимых развертываний. Это более сжатая альтернатива использованию шаблона Resource Manager или пакетов SDK для создания или обновления группы контейнеров.
Примечание.
Данный справочник относится к файлам YAML для экземпляров контейнеров Azure REST API версии 2021-10-01.
Схема
Ниже приведена схема для файла YAML, включающая комментарии, выделяющие ключевые свойства. Описание свойств этой схемы см. в разделе Значения свойств.
name: string # Name of the container group
apiVersion: '2021-10-01'
location: string
tags: {}
identity:
type: string
userAssignedIdentities: {}
properties: # Properties of container group
containers: # Array of container instances in the group
- name: string # Name of an instance
properties: # Properties of an instance
image: string # Container image used to create the instance
command:
- string
ports: # External-facing ports exposed on the instance, must also be set in group ipAddress property
- protocol: string
port: integer
environmentVariables:
- name: string
value: string
secureValue: string
resources: # Resource requirements of the instance
requests:
memoryInGB: number
cpu: number
gpu:
count: integer
sku: string
limits:
memoryInGB: number
cpu: number
gpu:
count: integer
sku: string
volumeMounts: # Array of volume mounts for the instance
- name: string
mountPath: string
readOnly: boolean
livenessProbe:
exec:
command:
- string
httpGet:
httpHeaders:
- name: string
value: string
path: string
port: integer
scheme: string
initialDelaySeconds: integer
periodSeconds: integer
failureThreshold: integer
successThreshold: integer
timeoutSeconds: integer
readinessProbe:
exec:
command:
- string
httpGet:
httpHeaders:
- name: string
value: string
path: string
port: integer
scheme: string
initialDelaySeconds: integer
periodSeconds: integer
failureThreshold: integer
successThreshold: integer
timeoutSeconds: integer
imageRegistryCredentials: # Credentials to pull a private image
- server: string
username: string
password: string
identity: string
identityUrl: string
restartPolicy: string
ipAddress: # IP address configuration of container group
ports:
- protocol: string
port: integer
type: string
ip: string
dnsNameLabel: string
dnsNameLabelReusePolicy: string
osType: string
volumes: # Array of volumes available to the instances
- name: string
azureFile:
shareName: string
readOnly: boolean
storageAccountName: string
storageAccountKey: string
emptyDir: {}
secret: {}
gitRepo:
directory: string
repository: string
revision: string
diagnostics:
logAnalytics:
workspaceId: string
workspaceKey: string
workspaceResourceId: string
logType: string
metadata: {}
subnetIds: # Subnet to deploy the container group into
- id: string
name: string
dnsConfig: # DNS configuration for container group
nameServers:
- string
searchDomains: string
options: string
sku: string # SKU for the container group
encryptionProperties:
vaultBaseUrl: string
keyName: string
keyVersion: string
initContainers: # Array of init containers in the group
- name: string
properties:
image: string
command:
- string
environmentVariables:
- name: string
value: string
secureValue: string
volumeMounts:
- name: string
mountPath: string
readOnly: boolean
Значения свойств
В следующих таблицах описаны значения, которые следует указать в этой схеме.
Объект Microsoft.ContainerInstance/containerGroups
Тип удостоверения, используемого для группы контейнеров. Тип SystemAssigned, UserAssigned включает как условно созданное удостоверение, так и набор удостоверений, назначенных пользователем. Тип None удаляет удостоверения из группы контейнеров. - SystemAssigned, UserAssigned, SystemAssigned, UserAssigned, None
userAssignedIdentities
объект
No
Список удостоверений пользователей, связанных с группой контейнеров. Ключевые ссылки на словарь удостоверений пользователей — это идентификаторы ресурсов Azure Resource Manager в форме: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}".
Политика перезапуска для всех контейнеров в группе контейнеров. - Always Всегда перезапускать — OnFailure Перезапустить при сбое — Never Никогда не перезапускать. Всегда, При сбое, Никогда
Имя общей папки файлов Azure, которая будет установлена в качестве тома.
readOnly
boolean
No
Флаг, указывающий, является ли общая папка файлов Azure, установленная в качестве тома, доступной только для чтения.
storageAccountName
строка
Да
Имя учетной записи хранения, содержащей общую папку файлов Azure.
storageAccountKey
строка
Нет
Ключ доступа учетной записи хранения, используемый для доступа к общей папке файлов Azure.
Объект GitRepoVolume
Имя.
Type
Обязательное поле
Значение
организации
строка
Нет
Имя целевого каталога. Не должно содержать знак '..' или начинаться с него. Если задано значение ".", каталог томов является репозиторием Git. В противном случае, если задано, том содержит репозиторий Git в подкаталоге с заданным именем.
Linux
строка
Да
URL-адрес репозитория
версия
строка
Нет
Зафиксировать хэш для указанной редакции.
Объект LogAnalytics
Имя.
Type
Обязательное поле
Значение
workspaceId
строка
Да
Идентификатор рабочей области для Log Analytics
workspaceKey
строка
Да
Ключ рабочей области для Log Analytics
workspaceResourceId
строка
Нет
Идентификатор ресурса рабочей области для Log Analytics
logType
перечисление
No
Тип журнала, который должен использоваться. - ContainerInsights или ContainerInstanceLogs
metadata
объект
No
Метаданные для Log Analytics.
Объект InitContainerPropertiesDefinition
Имя.
Type
Обязательное поле
Значение
Изображение
строка
Нет
Образ контейнера инициализации.
Команда
array
No
Команда для выполнения в контейнере инициализации в форме exec. - string
Номера SKU GPU K80 и P100 удаляются к 31 августа 2023 года. Это связано с выходом на пенсию базовых виртуальных машин, используемых: серии NC и серии NCv2, хотя номера SKU V100 будут доступны, он повторно используется для использования Служба Azure Kubernetes вместо этого. Ресурсы GPU не полностью поддерживаются и не должны использоваться для рабочих нагрузок. Используйте следующие ресурсы для миграции в AKS сегодня: как выполнить миграцию в AKS.