Поделиться через


Microsoft.ContainerInstance containerGroups 2018-06-01

Определение ресурса Bicep

Тип ресурса containerGroups можно развернуть с помощью операций, предназначенных для:

Список измененных свойств в каждой версии API см. в журнале изменений.

Формат ресурсов

Чтобы создать ресурс Microsoft.ContainerInstance/containerGroups, добавьте следующий Bicep в шаблон.

resource symbolicname 'Microsoft.ContainerInstance/containerGroups@2018-06-01' = {
  name: 'string'
  location: 'string'
  tags: {
    tagName1: 'tagValue1'
    tagName2: 'tagValue2'
  }
  properties: {
    containers: [
      {
        name: 'string'
        properties: {
          command: [
            'string'
          ]
          environmentVariables: [
            {
              name: 'string'
              secureValue: 'string'
              value: 'string'
            }
          ]
          image: 'string'
          livenessProbe: {
            exec: {
              command: [
                'string'
              ]
            }
            failureThreshold: int
            httpGet: {
              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: {
              path: 'string'
              port: int
              scheme: 'string'
            }
            initialDelaySeconds: int
            periodSeconds: int
            successThreshold: int
            timeoutSeconds: int
          }
          resources: {
            limits: {
              cpu: int
              memoryInGB: json('decimal-as-string')
            }
            requests: {
              cpu: int
              memoryInGB: json('decimal-as-string')
            }
          }
          volumeMounts: [
            {
              mountPath: 'string'
              name: 'string'
              readOnly: bool
            }
          ]
        }
      }
    ]
    diagnostics: {
      logAnalytics: {
        workspaceId: 'string'
        workspaceKey: 'string'
      }
    }
    imageRegistryCredentials: [
      {
        password: 'string'
        server: 'string'
        username: 'string'
      }
    ]
    ipAddress: {
      dnsNameLabel: 'string'
      ip: 'string'
      ports: [
        {
          port: int
          protocol: 'string'
        }
      ]
      type: 'Public'
    }
    osType: 'string'
    restartPolicy: 'string'
    volumes: [
      {
        azureFile: {
          readOnly: bool
          shareName: 'string'
          storageAccountKey: 'string'
          storageAccountName: 'string'
        }
        emptyDir: any()
        gitRepo: {
          directory: 'string'
          repository: 'string'
          revision: 'string'
        }
        name: 'string'
        secret: {}
      }
    ]
  }
}

Значения свойств

containerGroups

Имя Описание Значение
name имя ресурса. строка (обязательно)

Ограничение символов: 1–63

Допустимые символы:
Строчные буквы, цифры и дефисы.

Не может начинаться или заканчиваться дефисом. Использовать несколько дефисов подряд запрещено.
location Местоположение ресурса. строка
tags Теги ресурса. Словарь имен и значений тегов. См . раздел Теги в шаблонах
properties ContainerGroupProperties (обязательно)

ContainerGroupProperties

Имя Описание Значение
containers Контейнеры в группе контейнеров. Container[] (обязательно)
диагностика Диагностические сведения для группы контейнеров. ContainerGroupDiagnostics
imageRegistryCredentials Учетные данные реестра образов, из которого создается группа контейнеров. ImageRegistryCredential[]
ipAddress Тип IP-адреса группы контейнеров. Ipaddress
osType Тип операционной системы, необходимый контейнерам в группе контейнеров. Linux
Windows (обязательно)
restartPolicy Политика перезапуска для всех контейнеров в группе контейнеров.
- Always Всегда перезапуск
- OnFailure Перезапуск при сбое
- Never Никогда не перезапускайте
"Всегда"
"Никогда"
OnFailure
volumes. Список томов, которые могут быть смонтированы контейнерами в этой группе контейнеров. Том[]

Контейнер

Имя Описание Значение
name Предоставленное пользователем имя экземпляра контейнера. строка (обязательно)
properties Свойства экземпляра контейнера. ContainerProperties (обязательно)

ContainerProperties

Имя Описание Значение
. Команды для выполнения в экземпляре контейнера в форме exec. string[]
environmentVariables Переменные среды, которые следует задать в экземпляре контейнера. EnvironmentVariable[]
Изображение Имя образа, используемого для создания экземпляра контейнера. строка (обязательно)
livenessProbe Проба активности. ContainerProbe
ports; Порты, открытые для экземпляра контейнера. ContainerPort[]
readinessProbe Проба готовности. ContainerProbe
ресурсов Требования к ресурсу экземпляра контейнера. ResourceRequirements (обязательно)
volumeMounts Подключения томов, доступных для экземпляра контейнера. VolumeMount[]

EnvironmentVariable

Имя Описание Значение
name Имя переменной среды. строка (обязательно)
secureValue Значение безопасной переменной среды. строка
value Значение переменной среды. строка

ContainerProbe

Имя Описание Значение
exec Команда выполнения для проверки ContainerExec
failureThreshold Пороговое значение сбоя. INT
httpGet Параметры HTTP Get для проверки ContainerHttpGet
initialDelaySeconds Начальная задержка в секундах. INT
periodSeconds Период в секундах. INT
successThreshold Пороговое значение успешного выполнения. INT
timeoutSeconds Время ожидания в секундах. INT

ContainerExec

Имя Описание Значение
. Команды для выполнения в контейнере. string[]

ContainerHttpGet

Имя Описание Значение
path Путь к пробе. строка
порт Номер порта для пробы. int (обязательно)
схема Схема. "http"
"https"

ContainerPort

Имя Описание Значение
порт Номер порта, открытого в группе контейнеров. int (обязательно)
protocol Протокол, связанный с портом. "TCP"
"UDP"

ResourceRequirements

Имя Описание Значение
ограничения Пределы ресурса этого экземпляра контейнера. ResourceLimits
requests Запросы ресурса этого экземпляра контейнера. ResourceRequests (обязательно)

ResourceLimits

Имя Описание Значение
cpu Ограничение ЦП для этого экземпляра контейнера. INT
memoryInGB Ограничение памяти в Гб для этого экземпляра контейнера. Чтобы указать десятичное значение, используйте функцию json(). int или json decimal

ResourceRequests

Имя Описание Значение
cpu Запрос ЦП этого контейнера. int (обязательно)
memoryInGB Запрос памяти в Гб для этого экземпляра контейнера. Чтобы указать десятичное значение, используйте функцию json(). int или json decimal (обязательно)

VolumeMount

Имя Описание Значение
mountPath Путь в контейнере где том должен быть подключен. Не должен содержать двоеточие (:). string (обязательно)
name Имя подключения тома. string (обязательно)
readOnly Флаг, указывающий, является ли подключение тома доступным только для чтения. bool

ContainerGroupDiagnostics

Имя Описание Значение
logAnalytics Сведения Log Analytics для группы контейнеров. LogAnalytics

LogAnalytics

Имя Описание Значение
workspaceId Идентификатор рабочей области для Log Analytics string (обязательно)
workspaceKey Ключ рабочей области для Log Analytics string (обязательно)

ImageRegistryCredential

Имя Описание Значение
password Пароль для закрытого реестра. строка
server Сервер реестра образов Docker без указания протокола, такого как http или https. string (обязательно)
username Имя пользователя для закрытого реестра. string (обязательно)

IPAddress

Имя Описание Значение
dnsNameLabel Метка имени DNS для IP-адреса. строка
ip IP-адрес, открытый для доступа через Интернет. строка
ports; Список портов, открытых для группы контейнеров. Port[] (обязательный)
тип Указывает, предоставляется ли IP-адрес общедоступному Интернету. "Общедоступная" (обязательно)

Port

Имя Описание Значение
порт номер порта. int (обязательно)
protocol Протокол, связанный с портом. "TCP"
'UDP'

Громкость

Имя Описание Значение
azureFile Том файлов Azure. AzureFileVolume
emptyDir Пустой том каталога. Для Bicep можно использовать функцию any().
gitRepo Том репозитория Git. GitRepoVolume
name Имя тома. string (обязательно)
secret Секретный том. object

AzureFileVolume

Имя Описание Значение
readOnly Флаг, указывающий, является ли общая папка файлов Azure, установленная в качестве тома, доступной только для чтения. bool
ShareName Имя общей папки файлов Azure, которая будет установлена в качестве тома. string (обязательно)
storageAccountKey Ключ доступа учетной записи хранения, используемый для доступа к общей папке файлов Azure. строка
storageAccountName Имя учетной записи хранения, содержащей общую папку файлов Azure. string (обязательно)

GitRepoVolume

Имя Описание Значение
directory. Имя целевого каталога. Не должно содержать знак '..' или начинаться с него. Если указан параметр ".", каталогом томов будет репозиторий Git. В другом случае, если он указан, том будет содержать репозиторий Git в подкаталоге с заданным именем. строка
repository URL-адрес репозитория string (обязательно)
revision Зафиксировать хэш для указанной редакции. строка

Шаблоны быстрого запуска

Следующие шаблоны быстрого запуска развертывают этот тип ресурса.

Шаблон Описание
SQL Server группы доступности в AKS

Развертывание в Azure
При этом создается новый кластер AKS, а затем развертываются SQL Server группы доступности в нем с помощью пакета CNAB, развернутого с помощью Duffle и ACI.
Создание сайта WordPress

Развертывание в Azure
Этот шаблон создает сайт WordPress в экземпляре контейнера
Создание сайта WordPress в виртуальной сети

Развертывание в Azure
Этот шаблон создает сайт WordPress в экземпляре контейнера в виртуальной сети. И выведите полное доменное имя общедоступного сайта, которое может получить доступ к сайту WordPress.
Экземпляры контейнеров Azure — BC с SQL Server и IIS

Развертывание в Azure
Разверните один контейнер Windows с полнофункционализованной автономной средой Microsoft Dynamics 365 Business Central на Экземпляры контейнеров Azure.
Front Door с Экземпляры контейнеров и Шлюз приложений

Развертывание в Azure
Этот шаблон создает Front Door уровня "Стандартный" или "Премиум" с группой контейнеров и Шлюз приложений.
Front Door уровня "Стандартный" или "Премиум" с Экземпляры контейнеров Azure

Развертывание в Azure
Этот шаблон создает Front Door уровня "Стандартный" или "Премиум" с группой контейнеров.
Экземпляры контейнеров Azure — контейнер с пробой работоспособности

Развертывание в Azure
Разверните контейнер Linux с пробой работоспособности с помощью Экземпляры контейнеров Azure.
Экземпляры контейнеров Azure — контейнер Linux с общедоступным IP-адресом

Развертывание в Azure
Развертывание одного контейнера Linux, доступного по общедоступному IP-адресу, с помощью Экземпляры контейнеров Azure.
Экземпляры контейнеров Azure — контейнер с безопасным envVar

Развертывание в Azure
Разверните контейнер Linux с безопасной переменной среды с помощью Экземпляры контейнеров Azure.
Экземпляры контейнеров Azure — контейнер Linux с пустымdir

Развертывание в Azure
Разверните два контейнера Linux с общим томом emptyDir с помощью Экземпляры контейнеров Azure.
Экземпляры контейнеров Azure — контейнер Linux с gitRepo

Развертывание в Azure
Разверните контейнер Linux, использующий том gitRepo с помощью Экземпляры контейнеров Azure.
Экземпляры контейнеров Azure — контейнер с секретами

Развертывание в Azure
Разверните контейнер Linux с секретным томом с помощью Экземпляры контейнеров Azure.
Создание SFTP-сервера по запросу с постоянным хранилищем

Развертывание в Azure
В этом шаблоне демонстрируется SFTP-сервер по запросу с использованием экземпляра контейнера Azure (ACI).
SFTP-сервер по запросу с использованием существующей учетной записи хранения

Развертывание в Azure
В этом шаблоне демонстрируется SFTP-сервер по запросу с использованием экземпляра контейнера Azure (ACI).
Создание общей папки учетной записи хранения с помощью контейнеров

Развертывание в Azure
Этот шаблон создает учетную запись хранения и общую папку с помощью azure-cli в экземпляре контейнера.
Контейнер UDP в ACI

Развертывание в Azure
Эти шаблоны создают ресурс ACI и предоставляют контейнер через UDP.
Экземпляры контейнеров Azure — виртуальная сеть

Развертывание в Azure
Развертывание экземпляра контейнера в виртуальной сети Azure.
Создание Шлюз приложений с помощью сертификатов

Развертывание в Azure
В этом шаблоне показано, как создавать Key Vault самозаверяющие сертификаты, а затем ссылаться на Шлюз приложений.

Определение ресурса шаблона ARM

Тип ресурса containerGroups можно развернуть с помощью операций, предназначенных для:

Список измененных свойств в каждой версии API см. в журнале изменений.

Формат ресурсов

Чтобы создать ресурс Microsoft.ContainerInstance/containerGroups, добавьте следующий код JSON в шаблон.

{
  "type": "Microsoft.ContainerInstance/containerGroups",
  "apiVersion": "2018-06-01",
  "name": "string",
  "location": "string",
  "tags": {
    "tagName1": "tagValue1",
    "tagName2": "tagValue2"
  },
  "properties": {
    "containers": [
      {
        "name": "string",
        "properties": {
          "command": [ "string" ],
          "environmentVariables": [
            {
              "name": "string",
              "secureValue": "string",
              "value": "string"
            }
          ],
          "image": "string",
          "livenessProbe": {
            "exec": {
              "command": [ "string" ]
            },
            "failureThreshold": "int",
            "httpGet": {
              "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": {
              "path": "string",
              "port": "int",
              "scheme": "string"
            },
            "initialDelaySeconds": "int",
            "periodSeconds": "int",
            "successThreshold": "int",
            "timeoutSeconds": "int"
          },
          "resources": {
            "limits": {
              "cpu": "int",
              "memoryInGB": "[json('decimal-as-string')]"
            },
            "requests": {
              "cpu": "int",
              "memoryInGB": "[json('decimal-as-string')]"
            }
          },
          "volumeMounts": [
            {
              "mountPath": "string",
              "name": "string",
              "readOnly": "bool"
            }
          ]
        }
      }
    ],
    "diagnostics": {
      "logAnalytics": {
        "workspaceId": "string",
        "workspaceKey": "string"
      }
    },
    "imageRegistryCredentials": [
      {
        "password": "string",
        "server": "string",
        "username": "string"
      }
    ],
    "ipAddress": {
      "dnsNameLabel": "string",
      "ip": "string",
      "ports": [
        {
          "port": "int",
          "protocol": "string"
        }
      ],
      "type": "Public"
    },
    "osType": "string",
    "restartPolicy": "string",
    "volumes": [
      {
        "azureFile": {
          "readOnly": "bool",
          "shareName": "string",
          "storageAccountKey": "string",
          "storageAccountName": "string"
        },
        "emptyDir": {},
        "gitRepo": {
          "directory": "string",
          "repository": "string",
          "revision": "string"
        },
        "name": "string",
        "secret": {}
      }
    ]
  }
}

Значения свойств

containerGroups

Имя Описание Значение
тип Тип ресурса Microsoft.ContainerInstance/containerGroups
версия_API Версия API ресурсов '2018-06-01'
name имя ресурса. string (обязательно)

Ограничение символов: 1-63

Допустимые символы:
Строчные буквы, цифры и дефисы.

Не может начинаться или заканчиваться дефисом. Использовать несколько дефисов подряд запрещено.
location Местоположение ресурса. строка
tags Теги ресурса. Словарь имен и значений тегов. См . раздел Теги в шаблонах
properties ContainerGroupProperties (обязательно)

Свойства ContainerGroup

Имя Описание Значение
containers Контейнеры в группе контейнеров. Container[] (обязательно)
диагностика Диагностические сведения для группы контейнеров. ContainerGroupDiagnostics
imageRegistryCredentials Учетные данные реестра образов, из которого создается группа контейнеров. ImageRegistryCredential[]
ipAddress Тип IP-адреса группы контейнеров. Ipaddress
osType Тип операционной системы, необходимый контейнерам в группе контейнеров. Linux
"Windows" (обязательно)
restartPolicy Политика перезапуска для всех контейнеров в группе контейнеров.
- Always Всегда перезапускать
- OnFailure Перезапуск при сбое
- Never Никогда не перезапускайте
"Всегда"
"Никогда"
'OnFailure'
volumes. Список томов, которые могут быть смонтированы контейнерами в этой группе контейнеров. Том[]

Контейнер

Имя Описание Значение
name Предоставленное пользователем имя экземпляра контейнера. string (обязательно)
properties Свойства экземпляра контейнера. ContainerProperties (обязательно)

ContainerProperties

Имя Описание Значение
. Команды для выполнения в экземпляре контейнера в форме exec. string[]
environmentVariables Переменные среды, которые следует задать в экземпляре контейнера. EnvironmentVariable[]
Изображение Имя образа, используемого для создания экземпляра контейнера. string (обязательно)
livenessProbe Проба активности. ContainerProbe
ports; Порты, открытые для экземпляра контейнера. ContainerPort[]
readinessProbe Проба готовности. ContainerProbe
ресурсов Требования к ресурсу экземпляра контейнера. ResourceRequirements (обязательно)
volumeMounts Подключения томов, доступных для экземпляра контейнера. VolumeMount[]

EnvironmentVariable

Имя Описание Значение
name Имя переменной среды. string (обязательно)
secureValue Значение безопасной переменной среды. строка
value Значение переменной среды. строка

ContainerProbe

Имя Описание Значение
exec Команда выполнения для проверки ContainerExec
failureThreshold Пороговое значение сбоя. INT
httpGet Параметры HTTP Get для проверки ContainerHttpGet
initialDelaySeconds Начальная задержка в секундах. INT
periodSeconds Период в секундах. INT
successThreshold Пороговое значение успешного выполнения. INT
timeoutSeconds Время ожидания в секундах. INT

ContainerExec

Имя Описание Значение
. Команды для выполнения в контейнере. string[]

ContainerHttpGet

Имя Описание Значение
path Путь к пробе. строка
порт Номер порта для пробы. int (обязательно)
схема Схема. "http"
"https"

ContainerPort

Имя Описание Значение
порт Номер порта, открытого в группе контейнеров. int (обязательно)
protocol Протокол, связанный с портом. "TCP"
'UDP'

ResourceRequirements

Имя Описание Значение
ограничения Пределы ресурса этого экземпляра контейнера. ResourceLimits
requests Запросы ресурса этого экземпляра контейнера. ResourceRequests (обязательно)

ResourceLimits

Имя Описание Значение
cpu Ограничение ЦП для этого экземпляра контейнера. INT
memoryInGB Ограничение памяти в Гб для этого экземпляра контейнера. Чтобы указать десятичное значение, используйте функцию json(). int или json decimal

ResourceRequests

Имя Описание Значение
cpu Запрос ЦП этого контейнера. int (обязательно)
memoryInGB Запрос памяти в Гб для этого экземпляра контейнера. Чтобы указать десятичное значение, используйте функцию json(). int или json decimal (обязательно)

VolumeMount

Имя Описание Значение
mountPath Путь в контейнере где том должен быть подключен. Не должен содержать двоеточие (:). строка (обязательно)
name Имя подключения тома. строка (обязательно)
readOnly Флаг, указывающий, является ли подключение тома доступным только для чтения. bool

ContainerGroupDiagnostics

Имя Описание Значение
logAnalytics Сведения Log Analytics для группы контейнеров. LogAnalytics

LogAnalytics

Имя Описание Значение
workspaceId Идентификатор рабочей области для Log Analytics строка (обязательно)
workspaceKey Ключ рабочей области для Log Analytics строка (обязательно)

ImageRegistryCredential

Имя Описание Значение
password Пароль для закрытого реестра. строка
server Сервер реестра образов Docker без указания протокола, такого как http или https. строка (обязательно)
username Имя пользователя для закрытого реестра. строка (обязательно)

IPAddress

Имя Описание Значение
dnsNameLabel Метка имени DNS для IP-адреса. строка
ip IP-адрес, открытый для доступа через Интернет. строка
ports; Список портов, открытых для группы контейнеров. Port[] (обязательно)
тип Указывает, предоставляется ли IP-адрес общедоступному Интернету. Public (обязательно)

Port

Имя Описание Значение
порт номер порта. int (обязательно)
protocol Протокол, связанный с портом. "TCP"
"UDP"

Громкость

Имя Описание Значение
azureFile Том файлов Azure. AzureFileVolume
emptyDir Пустой том каталога.
gitRepo Том репозитория Git. GitRepoVolume
name Имя тома. строка (обязательно)
secret Секретный том. object

AzureFileVolume

Имя Описание Значение
readOnly Флаг, указывающий, является ли общая папка файлов Azure, установленная в качестве тома, доступной только для чтения. bool
ShareName Имя общей папки файлов Azure, которая будет установлена в качестве тома. string (обязательно)
storageAccountKey Ключ доступа учетной записи хранения, используемый для доступа к общей папке файлов Azure. строка
storageAccountName Имя учетной записи хранения, содержащей общую папку файлов Azure. string (обязательно)

GitRepoVolume

Имя Описание Значение
directory. Имя целевого каталога. Не должно содержать знак '..' или начинаться с него. Если указан параметр ".", каталогом томов будет репозиторий Git. В другом случае, если он указан, том будет содержать репозиторий Git в подкаталоге с заданным именем. строка
repository URL-адрес репозитория string (обязательно)
revision Зафиксировать хэш для указанной редакции. строка

Шаблоны быстрого запуска

Следующие шаблоны быстрого запуска развертывают этот тип ресурса.

Шаблон Описание
SQL Server группы доступности в AKS

Развертывание в Azure
При этом создается новый кластер AKS, а затем развертываются SQL Server группы доступности в нем с помощью пакета CNAB, развернутого с помощью Duffle и ACI.
Создание сайта WordPress

Развертывание в Azure
Этот шаблон создает сайт WordPress в экземпляре контейнера
Создание сайта WordPress в виртуальной сети

Развертывание в Azure
Этот шаблон создает сайт WordPress в экземпляре контейнера в виртуальной сети. И выведите полное доменное имя общедоступного сайта, которое может получить доступ к сайту WordPress.
Экземпляры контейнеров Azure — BC с SQL Server и IIS

Развертывание в Azure
Разверните один контейнер Windows с полнофункционализованной автономной средой Microsoft Dynamics 365 Business Central на Экземпляры контейнеров Azure.
Front Door с Экземпляры контейнеров и Шлюз приложений

Развертывание в Azure
Этот шаблон создает Front Door уровня "Стандартный" или "Премиум" с группой контейнеров и Шлюз приложений.
Front Door уровня "Стандартный" или "Премиум" с Экземпляры контейнеров Azure

Развертывание в Azure
Этот шаблон создает Front Door уровня "Стандартный" или "Премиум" с группой контейнеров.
Экземпляры контейнеров Azure — контейнер с пробой работоспособности

Развертывание в Azure
Разверните контейнер Linux с пробой работоспособности с помощью Экземпляры контейнеров Azure.
Экземпляры контейнеров Azure — контейнер Linux с общедоступным IP-адресом

Развертывание в Azure
Развертывание одного контейнера Linux, доступного по общедоступному IP-адресу, с помощью Экземпляры контейнеров Azure.
Экземпляры контейнеров Azure — контейнер с безопасным envVar

Развертывание в Azure
Разверните контейнер Linux с безопасной переменной среды с помощью Экземпляры контейнеров Azure.
Экземпляры контейнеров Azure — контейнер Linux с пустымdir

Развертывание в Azure
Разверните два контейнера Linux с общим томом emptyDir с помощью Экземпляры контейнеров Azure.
Экземпляры контейнеров Azure — контейнер Linux с gitRepo

Развертывание в Azure
Разверните контейнер Linux, использующий том gitRepo с помощью Экземпляры контейнеров Azure.
Экземпляры контейнеров Azure — контейнер с секретами

Развертывание в Azure
Разверните контейнер Linux с секретным томом с помощью Экземпляры контейнеров Azure.
Создание SFTP-сервера по запросу с постоянным хранилищем

Развертывание в Azure
В этом шаблоне демонстрируется SFTP-сервер по запросу с использованием экземпляра контейнера Azure (ACI).
SFTP-сервер по запросу с использованием существующей учетной записи хранения

Развертывание в Azure
В этом шаблоне демонстрируется SFTP-сервер по запросу с использованием экземпляра контейнера Azure (ACI).
Создание общей папки учетной записи хранения с помощью контейнеров

Развертывание в Azure
Этот шаблон создает учетную запись хранения и общую папку с помощью azure-cli в экземпляре контейнера.
Контейнер UDP в ACI

Развертывание в Azure
Эти шаблоны создают ресурс ACI и предоставляют контейнер через UDP.
Экземпляры контейнеров Azure — виртуальная сеть

Развертывание в Azure
Развертывание экземпляра контейнера в виртуальной сети Azure.
Создание Шлюз приложений с помощью сертификатов

Развертывание в Azure
В этом шаблоне показано, как создавать Key Vault самозаверяющие сертификаты, а затем ссылаться на Шлюз приложений.

Определение ресурса Terraform (поставщик AzAPI)

Тип ресурса containerGroups можно развернуть с помощью операций, предназначенных для:

  • Группы ресурсов

Список измененных свойств в каждой версии API см. в журнале изменений.

Формат ресурсов

Чтобы создать ресурс Microsoft.ContainerInstance/containerGroups, добавьте следующую terraform в шаблон.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.ContainerInstance/containerGroups@2018-06-01"
  name = "string"
  location = "string"
  parent_id = "string"
  tags = {
    tagName1 = "tagValue1"
    tagName2 = "tagValue2"
  }
  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 = {
                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 = {
                path = "string"
                port = int
                scheme = "string"
              }
              initialDelaySeconds = int
              periodSeconds = int
              successThreshold = int
              timeoutSeconds = int
            }
            resources = {
              limits = {
                cpu = int
                memoryInGB = "decimal-as-string"
              }
              requests = {
                cpu = int
                memoryInGB = "decimal-as-string"
              }
            }
            volumeMounts = [
              {
                mountPath = "string"
                name = "string"
                readOnly = bool
              }
            ]
          }
        }
      ]
      diagnostics = {
        logAnalytics = {
          workspaceId = "string"
          workspaceKey = "string"
        }
      }
      imageRegistryCredentials = [
        {
          password = "string"
          server = "string"
          username = "string"
        }
      ]
      ipAddress = {
        dnsNameLabel = "string"
        ip = "string"
        ports = [
          {
            port = int
            protocol = "string"
          }
        ]
        type = "Public"
      }
      osType = "string"
      restartPolicy = "string"
      volumes = [
        {
          azureFile = {
            readOnly = bool
            shareName = "string"
            storageAccountKey = "string"
            storageAccountName = "string"
          }
          gitRepo = {
            directory = "string"
            repository = "string"
            revision = "string"
          }
          name = "string"
          secret = {}
        }
      ]
    }
  })
}

Значения свойств

containerGroups

Имя Описание Значение
тип Тип ресурса "Microsoft.ContainerInstance/containerGroups@2018-06-01"
name имя ресурса. строка (обязательно)

Ограничение символов: 1–63

Допустимые символы:
Строчные буквы, цифры и дефисы.

Не может начинаться или заканчиваться дефисом. Использовать несколько дефисов подряд запрещено.
location Местоположение ресурса. строка
parent_id Чтобы выполнить развертывание в группе ресурсов, используйте идентификатор этой группы ресурсов. строка (обязательно)
tags Теги ресурса. Словарь имен и значений тегов.
properties ContainerGroupProperties (обязательно)

ContainerGroupProperties

Имя Описание Значение
containers Контейнеры в группе контейнеров. Container[] (обязательно)
диагностика Диагностические сведения для группы контейнеров. ContainerGroupDiagnostics
imageRegistryCredentials Учетные данные реестра образов, из которого создается группа контейнеров. ImageRegistryCredential[]
ipAddress Тип IP-адреса группы контейнеров. Ipaddress
osType Тип операционной системы, необходимый контейнерам в группе контейнеров. "Linux"
"Windows" (обязательно)
restartPolicy Политика перезапуска для всех контейнеров в группе контейнеров.
- Always Всегда перезапуск
- OnFailure Перезапуск при сбое
- Never Никогда не перезапускайте
"Всегда"
"Никогда"
"OnFailure"
volumes. Список томов, которые могут быть смонтированы контейнерами в этой группе контейнеров. Том[]

Контейнер

Имя Описание Значение
name Предоставленное пользователем имя экземпляра контейнера. строка (обязательно)
properties Свойства экземпляра контейнера. ContainerProperties (обязательно)

ContainerProperties

Имя Описание Значение
. Команды для выполнения в экземпляре контейнера в форме exec. string[]
environmentVariables Переменные среды, которые следует задать в экземпляре контейнера. EnvironmentVariable[]
Изображение Имя образа, используемого для создания экземпляра контейнера. строка (обязательно)
livenessProbe Проба активности. ContainerProbe
ports; Порты, открытые для экземпляра контейнера. ContainerPort[]
readinessProbe Проба готовности. ContainerProbe
ресурсов Требования к ресурсу экземпляра контейнера. ResourceRequirements (обязательно)
volumeMounts Подключения томов, доступных для экземпляра контейнера. VolumeMount[]

EnvironmentVariable

Имя Описание Значение
name Имя переменной среды. строка (обязательно)
secureValue Значение безопасной переменной среды. строка
value Значение переменной среды. строка

ContainerProbe

Имя Описание Значение
exec Команда выполнения для проверки ContainerExec
failureThreshold Пороговое значение сбоя. INT
httpGet Параметры HTTP Get для проверки ContainerHttpGet
initialDelaySeconds Начальная задержка в секундах. INT
periodSeconds Период в секундах. INT
successThreshold Пороговое значение успешного выполнения. INT
timeoutSeconds Время ожидания в секундах. INT

ContainerExec

Имя Описание Значение
. Команды для выполнения в контейнере. string[]

ContainerHttpGet

Имя Описание Значение
path Путь к пробе. строка
порт Номер порта для пробы. int (обязательно)
схема Схема. "http"
"https"

ContainerPort

Имя Описание Значение
порт Номер порта, открытого в группе контейнеров. int (обязательно)
protocol Протокол, связанный с портом. "TCP"
"UDP"

ResourceRequirements

Имя Описание Значение
ограничения Пределы ресурса этого экземпляра контейнера. ResourceLimits
requests Запросы ресурса этого экземпляра контейнера. ResourceRequests (обязательно)

ResourceLimits

Имя Описание Значение
cpu Ограничение ЦП для этого экземпляра контейнера. INT
memoryInGB Ограничение памяти в Гб для этого экземпляра контейнера. Укажите десятичное значение в виде строки. int или json decimal

ResourceRequests

Имя Описание Значение
cpu Запрос ЦП этого контейнера. int (обязательно)
memoryInGB Запрос памяти в Гб для этого экземпляра контейнера. Укажите десятичное значение в виде строки. int или json decimal (обязательно)

VolumeMount

Имя Описание Значение
mountPath Путь в контейнере где том должен быть подключен. Не должен содержать двоеточие (:). string (обязательно)
name Имя подключения тома. строка (обязательно)
readOnly Флаг, указывающий, является ли подключение тома доступным только для чтения. bool

ContainerGroupDiagnostics

Имя Описание Значение
logAnalytics Сведения Log Analytics для группы контейнеров. LogAnalytics

LogAnalytics

Имя Описание Значение
workspaceId Идентификатор рабочей области для Log Analytics строка (обязательно)
workspaceKey Ключ рабочей области для Log Analytics строка (обязательно)

ImageRegistryCredential

Имя Описание Значение
password Пароль для закрытого реестра. строка
server Сервер реестра образов Docker без указания протокола, такого как http или https. строка (обязательно)
username Имя пользователя для закрытого реестра. строка (обязательно)

IPAddress

Имя Описание Значение
dnsNameLabel Метка имени DNS для IP-адреса. строка
ip IP-адрес, открытый для доступа через Интернет. строка
ports; Список портов, открытых для группы контейнеров. Port[] (обязательно)
тип Указывает, предоставляется ли IP-адрес общедоступному Интернету. "Public" (обязательно)

Port

Имя Описание Значение
порт номер порта. int (обязательно)
protocol Протокол, связанный с портом. "TCP"
"UDP"

Громкость

Имя Описание Значение
azureFile Том файлов Azure. AzureFileVolume
emptyDir Пустой том каталога.
gitRepo Том репозитория Git. GitRepoVolume
name Имя тома. строка (обязательно)
secret Секретный том. объект

AzureFileVolume

Имя Описание Значение
readOnly Флаг, указывающий, является ли общая папка файлов Azure, установленная в качестве тома, доступной только для чтения. bool
ShareName Имя общей папки файлов Azure, которая будет установлена в качестве тома. строка (обязательно)
storageAccountKey Ключ доступа учетной записи хранения, используемый для доступа к общей папке файлов Azure. строка
storageAccountName Имя учетной записи хранения, содержащей общую папку файлов Azure. строка (обязательно)

GitRepoVolume

Имя Описание Значение
directory. Имя целевого каталога. Не должно содержать знак '..' или начинаться с него. Если указан параметр ".", каталогом томов будет репозиторий Git. В другом случае, если он указан, том будет содержать репозиторий Git в подкаталоге с заданным именем. строка
repository URL-адрес репозитория string (обязательно)
revision Зафиксировать хэш для указанной редакции. строка