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


Microsoft.App containerApps

Определение ресурсов Bicep

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

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

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

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

resource symbolicname 'Microsoft.App/containerApps@2024-10-02-preview' = {
  extendedLocation: {
    name: 'string'
    type: 'string'
  }
  identity: {
    type: 'string'
    userAssignedIdentities: {
      {customized property}: {}
    }
  }
  kind: 'string'
  location: 'string'
  managedBy: 'string'
  name: 'string'
  properties: {
    configuration: {
      activeRevisionsMode: 'string'
      dapr: {
        appId: 'string'
        appPort: int
        appProtocol: 'string'
        enableApiLogging: bool
        enabled: bool
        httpMaxRequestSize: int
        httpReadBufferSize: int
        logLevel: 'string'
      }
      identitySettings: [
        {
          identity: 'string'
          lifecycle: 'string'
        }
      ]
      ingress: {
        additionalPortMappings: [
          {
            exposedPort: int
            external: bool
            targetPort: int
          }
        ]
        allowInsecure: bool
        clientCertificateMode: 'string'
        corsPolicy: {
          allowCredentials: bool
          allowedHeaders: [
            'string'
          ]
          allowedMethods: [
            'string'
          ]
          allowedOrigins: [
            'string'
          ]
          exposeHeaders: [
            'string'
          ]
          maxAge: int
        }
        customDomains: [
          {
            bindingType: 'string'
            certificateId: 'string'
            name: 'string'
          }
        ]
        exposedPort: int
        external: bool
        ipSecurityRestrictions: [
          {
            action: 'string'
            description: 'string'
            ipAddressRange: 'string'
            name: 'string'
          }
        ]
        stickySessions: {
          affinity: 'string'
        }
        targetPort: int
        targetPortHttpScheme: 'string'
        traffic: [
          {
            label: 'string'
            latestRevision: bool
            revisionName: 'string'
            weight: int
          }
        ]
        transport: 'string'
      }
      maxInactiveRevisions: int
      registries: [
        {
          identity: 'string'
          passwordSecretRef: 'string'
          server: 'string'
          username: 'string'
        }
      ]
      revisionTransitionThreshold: int
      runtime: {
        dotnet: {
          autoConfigureDataProtection: bool
        }
        java: {
          enableMetrics: bool
          javaAgent: {
            enabled: bool
            logging: {
              loggerSettings: [
                {
                  level: 'string'
                  logger: 'string'
                }
              ]
            }
          }
        }
      }
      secrets: [
        {
          identity: 'string'
          keyVaultUrl: 'string'
          name: 'string'
          value: 'string'
        }
      ]
      service: {
        type: 'string'
      }
      targetLabel: 'string'
    }
    environmentId: 'string'
    managedEnvironmentId: 'string'
    patchingConfiguration: {
      patchingMode: 'string'
    }
    template: {
      containers: [
        {
          args: [
            'string'
          ]
          command: [
            'string'
          ]
          env: [
            {
              name: 'string'
              secretRef: 'string'
              value: 'string'
            }
          ]
          image: 'string'
          imageType: 'string'
          name: 'string'
          probes: [
            {
              failureThreshold: int
              httpGet: {
                host: 'string'
                httpHeaders: [
                  {
                    name: 'string'
                    value: 'string'
                  }
                ]
                path: 'string'
                port: int
                scheme: 'string'
              }
              initialDelaySeconds: int
              periodSeconds: int
              successThreshold: int
              tcpSocket: {
                host: 'string'
                port: int
              }
              terminationGracePeriodSeconds: int
              timeoutSeconds: int
              type: 'string'
            }
          ]
          resources: {
            cpu: int
            gpu: int
            memory: 'string'
          }
          volumeMounts: [
            {
              mountPath: 'string'
              subPath: 'string'
              volumeName: 'string'
            }
          ]
        }
      ]
      initContainers: [
        {
          args: [
            'string'
          ]
          command: [
            'string'
          ]
          env: [
            {
              name: 'string'
              secretRef: 'string'
              value: 'string'
            }
          ]
          image: 'string'
          imageType: 'string'
          name: 'string'
          resources: {
            cpu: int
            gpu: int
            memory: 'string'
          }
          volumeMounts: [
            {
              mountPath: 'string'
              subPath: 'string'
              volumeName: 'string'
            }
          ]
        }
      ]
      revisionSuffix: 'string'
      scale: {
        cooldownPeriod: int
        maxReplicas: int
        minReplicas: int
        pollingInterval: int
        rules: [
          {
            azureQueue: {
              accountName: 'string'
              auth: [
                {
                  secretRef: 'string'
                  triggerParameter: 'string'
                }
              ]
              identity: 'string'
              queueLength: int
              queueName: 'string'
            }
            custom: {
              auth: [
                {
                  secretRef: 'string'
                  triggerParameter: 'string'
                }
              ]
              identity: 'string'
              metadata: {
                {customized property}: 'string'
              }
              type: 'string'
            }
            http: {
              auth: [
                {
                  secretRef: 'string'
                  triggerParameter: 'string'
                }
              ]
              identity: 'string'
              metadata: {
                {customized property}: 'string'
              }
            }
            name: 'string'
            tcp: {
              auth: [
                {
                  secretRef: 'string'
                  triggerParameter: 'string'
                }
              ]
              identity: 'string'
              metadata: {
                {customized property}: 'string'
              }
            }
          }
        ]
      }
      serviceBinds: [
        {
          clientType: 'string'
          customizedKeys: {
            {customized property}: 'string'
          }
          name: 'string'
          serviceId: 'string'
        }
      ]
      terminationGracePeriodSeconds: int
      volumes: [
        {
          mountOptions: 'string'
          name: 'string'
          secrets: [
            {
              path: 'string'
              secretRef: 'string'
            }
          ]
          storageName: 'string'
          storageType: 'string'
        }
      ]
    }
    workloadProfileName: 'string'
  }
  tags: {
    {customized property}: 'string'
  }
}

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

Конфигурация

Имя Описание Ценность
activeRevisionsMode ActiveRevisionsMode управляет обработкой активных редакций для приложения-контейнера:
<списке><элемент>single: одновременно может быть активна только одна редакция. Нельзя использовать весы трафика. Это значение по умолчанию.</item><элемент>несколько: можно использовать несколько версий, включая дополнительные весы трафика и метки.</item><элемент>Метки: активны только редакции с метками. Весы трафика можно применять к меткам.</item></list>
"Метки"
"Несколько"
"Single"
dapr Конфигурация Dapr для приложения-контейнера. Dapr
identitySettings Необязательные параметры для управляемых удостоверений, назначенных приложению-контейнеру. Если управляемое удостоверение не указано здесь, будут использоваться параметры по умолчанию. IdentitySettings[]
вход Конфигурации входящего трафика. входящего трафика
maxInactiveRevisions Необязательный. Максимальные неактивные редакции приложения-контейнера могут иметь. int
Реестров Коллекция учетных данных реестра частных контейнеров для контейнеров, используемых приложением-контейнером RegistryCredentials[]
revisionTransitionThreshold Необязательный. Процент общего числа реплик, которые необходимо принести перед переходом редакции. Значение по умолчанию равно 100, если он не указан. Значение должно быть больше 0 и меньше или равно 100. int

Ограничения целостности:
Минимальное значение = 1
Максимальное значение = 100
Среды выполнения Конфигурация среды выполнения приложения для приложения-контейнера. среды выполнения
Секреты Коллекция секретов, используемых приложением-контейнером секрет[]
служба Приложение-контейнер, которое должно быть службой приложений для разработки службы
targetLabel Обязательный в режиме редакций меток. Метка для применения к вновь созданной редакции. струна

Контейнер

Имя Описание Ценность
args Аргументы команд запуска контейнера. string[]
команда Команда запуска контейнера. string[]
env Переменные среды контейнера. EnvironmentVar[]
образ Тег образа контейнера. струна
тип изображения Тип изображения. Установите значение CloudBuild, чтобы система могла управлять изображением, где пользователь не сможет обновить образ с помощью поля изображения. Задайте значение ContainerImage для предоставленного пользователем образа. CloudBuild
ContainerImage
имя Имя настраиваемого контейнера. струна
Зонды Список проб для контейнера. ContainerAppProbe[]
ресурсы Требования к ресурсам контейнера. ContainerResources
volumeMounts Подключение тома контейнера. VolumeMount[]

ContainerAppProbe

Имя Описание Ценность
failureThreshold Минимальные последовательные сбои для проверки, которые будут считаться неудачными после успешного выполнения. По умолчанию — 3. Минимальное значение равно 1. Максимальное значение равно 10. int
httpGet HTTPGet указывает http-запрос для выполнения. ContainerAppProbeHttpGet
initialDelaySeconds Количество секунд после запуска контейнера до запуска проб активности. Минимальное значение равно 1. Максимальное значение равно 60. int
periodSeconds Как часто (в секундах) выполнять пробу. По умолчанию — 10 секунд. Минимальное значение равно 1. Максимальное значение — 240. int
successThreshold Минимальные последовательные успехи для пробы, которые будут считаться успешными после сбоя. Значение по умолчанию — 1. Должно быть 1 для жизни и запуска. Минимальное значение равно 1. Максимальное значение равно 10. int
tcpSocket TCPSocket указывает действие, связанное с TCP-портом. Перехватчики TCP еще не поддерживаются. ContainerAppProbeTcpSocket
terminationGracePeriodSeconds Необязательная длительность в секундах модуль pod должен завершиться корректно при сбое пробы. Льготный период — это длительность в секундах после того, как процессы, выполняемые в модуле pod, отправляются сигнал завершения и время принудительного прекращения процессов с помощью сигнала об убийстве. Задайте это значение дольше ожидаемого времени очистки для процесса. Если это значение равно nil, будет использоваться завершение модуля podGracePeriodSeconds. В противном случае это значение переопределяет значение, предоставленное спецификацией pod. Значение должно быть неотрицательно целым числом. Нулевое значение указывает, что немедленно останавливается через сигнал убийства (нет возможности завершить работу). Это альфа-поле и требует включения шлюза функций ProbeTerminationGracePeriod. Максимальное значение — 3600 секунд (1 час) int
timeoutSeconds Количество секунд, после которого время ожидания пробы истекает. По умолчанию используется значение 1 секунды. Минимальное значение равно 1. Максимальное значение — 240. int
тип Тип пробы. "Liveness"
"Готовность"
"Startup"

ContainerAppProbeHttpGet

Имя Описание Ценность
хозяин Имя узла для подключения по умолчанию к IP-адресу pod. Возможно, вы хотите задать "Host" в httpHeaders. струна
httpHeaders Пользовательские заголовки, заданные в запросе. HTTP позволяет повторять заголовки. ContainerAppProbeHttpGetHttpHeadersItem[]
путь Путь к доступу на HTTP-сервере. струна
порт Имя или номер порта для доступа к контейнеру. Число должно находиться в диапазоне от 1 до 65535. Имя должно быть IANA_SVC_NAME. int (обязательно)
схема Схема, используемая для подключения к узлу. По умолчанию используется протокол HTTP. "HTTP"
"HTTPS"

ContainerAppProbeHttpGetHttpHeadersItem

Имя Описание Ценность
имя Имя поля заголовка строка (обязательно)
ценность Значение поля заголовка строка (обязательно)

ContainerAppProbeTcpSocket

Имя Описание Ценность
хозяин Необязательно. Имя узла для подключения по умолчанию используется для IP-адреса pod. струна
порт Номер или имя порта для доступа к контейнеру. Число должно находиться в диапазоне от 1 до 65535. Имя должно быть IANA_SVC_NAME. int (обязательно)

ContainerAppProperties

Имя Описание Ценность
конфигурация Свойства конфигурации приложений контейнеров, отличные от версий. конфигурации
environmentId Идентификатор ресурса среды. струна
managedEnvironmentId Устаревшие. Идентификатор ресурса среды приложения-контейнера. струна
PatchingConfiguration Настройка автоматического исправления для приложения-контейнера. ContainerAppPropertiesPatchingConfiguration
шаблон Определение приложения с версиями контейнера. шаблона
workloadProfileName Имя профиля рабочей нагрузки для закрепления для выполнения приложения контейнера. струна

ContainerAppPropertiesPatchingConfiguration

Имя Описание Ценность
PatchingMode Режим исправления для приложения контейнера. Значение NULL или значение по умолчанию в этом поле будет интерпретировано как автоматическое по RP. Автоматический режим будет автоматически применять доступные исправления. В ручном режиме пользователю потребуется вручную применить исправления. Отключенный режим остановит обнаружение исправлений и автоматическое исправление. "Автоматически"
"Отключено"
"Вручную"

ContainerResources

Имя Описание Ценность
ЦПУ Обязательный ЦП в ядрах, например 0,5 int
Графический процессор Обязательный GPU в ядрах для приложения на основе GPU, например 1.0 int
память Требуемая память, например "250 Мб" струна

CorsPolicy

Имя Описание Ценность
allowCredentials Указывает, разрешает ли ресурс учетные данные bool
allowedHeaders Указывает содержимое заголовка access-control-allow-headers string[]
allowedMethods Указывает содержимое заголовка метода access-control-allow-methods string[]
allowedOrigins Указывает содержимое заголовка access-control-allow-origins string[] (обязательно)
exposeHeaders Указывает содержимое заголовка access-control-expose-headers string[]
maxAge Указывает содержимое заголовка access-control-max-age int

CustomDomain

Имя Описание Ценность
bindingType Тип привязки личного домена. "Авто"
"Отключено"
'SniEnabled'
certificateId Идентификатор ресурса сертификата, привязанного к этому имени узла. Должен существовать в управляемой среде. струна
имя Имя узла. строка (обязательно)

CustomScaleRule

Имя Описание Ценность
auth Секреты проверки подлинности для настраиваемого правила масштабирования. ScaleRuleAuth[]
тождество Идентификатор ресурса управляемого удостоверения, назначаемого пользователем, который назначается приложению контейнера или системе для удостоверения, назначаемого системой. струна
метаданные Свойства метаданных для описания настраиваемого правила масштабирования. CustomScaleRuleMetadata
тип Тип настраиваемого правила масштабирования
например: azure-servicebus, redis и т. д.
струна

CustomScaleRuleMetadata

Имя Описание Ценность

Dapr

Имя Описание Ценность
appId Идентификатор приложения Dapr струна
appPort Сообщает Dapr, какой порт приложения прослушивается int
appProtocol Сообщает Dapr, какой протокол использует приложение. Допустимые параметры: http и grpc. Значение по умолчанию — http 'grpc'
"http"
enableApiLogging Включает ведение журнала API для бокового автомобиля Dapr bool
Включен Логическое значение, указывающее, включен ли боковой автомобиль Dapr bool
httpMaxRequestSize Увеличение максимального размера параметра http и grpc-серверов текста запроса в МБ для обработки отправки больших файлов. Значение по умолчанию — 4 МБ. int
httpReadBufferSize Максимальный размер буфера чтения заголовка HTTP в КБ для обработки при отправке заголовков с несколькими КБ. Значение по умолчанию — 65 КБ. int
LogLevel Задает уровень журнала для бокового автомобиля Dapr. Допустимые значения: отладка, информация, предупреждение, ошибка. По умолчанию используется информация. "отладка"
"error"
"info"
"предупреждать"

EnvironmentVar

Имя Описание Ценность
имя Имя переменной среды. струна
secretRef Имя секрета приложения контейнера, из которого требуется извлечь значение переменной среды. струна
ценность Значение переменной среды, отличной от секрета. струна

ExtendedLocation

Имя Описание Ценность
имя Имя расширенного расположения. струна
тип Тип расширенного расположения. CustomLocation

HttpScaleRule

Имя Описание Ценность
auth Секреты проверки подлинности для настраиваемого правила масштабирования. ScaleRuleAuth[]
тождество Идентификатор ресурса управляемого удостоверения, назначаемого пользователем, который назначается приложению контейнера или системе для удостоверения, назначаемого системой. струна
метаданные Свойства метаданных для описания правила масштабирования HTTP. HttpScaleRuleMetadata

HttpScaleRuleMetadata

Имя Описание Ценность

IdentitySettings

Имя Описание Ценность
тождество Идентификатор ресурса управляемого удостоверения, назначаемого пользователем, который назначается приложению контейнера или системе для удостоверения, назначаемого системой. строка (обязательно)
жизненный цикл Используется для выбора этапов жизненного цикла приложения-контейнера, в течение которого должно быть доступно управляемое удостоверение. "Все"
Init
"Main"
"Нет"

Вход

Имя Описание Ценность
additionalPortMappings Параметры для предоставления дополнительных портов в приложении-контейнере IngressPortMapping[]
allowInsecure Логическое значение, указывающее, разрешено ли http-подключения. Если задано значение false HTTP-подключений, автоматически перенаправляются в подключения HTTPS. bool
clientCertificateMode Режим сертификата клиента для проверки подлинности mTLS. Игнорировать указывает, что сервер удаляет сертификат клиента при переадресации. Принять указывает, что сервер перенаправит сертификат клиента, но не требует сертификата клиента. Требовать, чтобы сервер должен иметь сертификат клиента. "принять"
"игнорировать"
"требовать"
corsPolicy Политика CORS для приложения-контейнера CorsPolicy
customDomains Привязки личного домена для имен узлов контейнерных приложений. CustomDomain[]
exposedPort Предоставленный порт в контейнерах для tcp-трафика из входящего трафика int
внешний Bool, указывающий, предоставляет ли приложение внешнюю конечную точку HTTP bool
ipSecurityRestrictions Правила ограничения входящих IP-адресов. IpSecurityRestrictionRule[]
stickySessions Липкие сеансы для единого режима редакции IngressStickySessions
targetPort Целевой порт в контейнерах для трафика из входящего трафика int
targetPortHttpScheme Будет ли http-приложение прослушивать http или https "http"
Https
движение Вес трафика для редакций приложения по весу трафика[]
транспорт Протокол входящего трафика "Auto"
"http"
"http2"
Tcp

IngressPortMapping

Имя Описание Ценность
exposedPort Указывает предоставленный порт для целевого порта. Если он не указан, по умолчанию используется целевой порт. int
внешний Указывает, доступен ли порт приложения за пределами среды. bool (обязательно)
targetPort Указывает контейнер пользователя порта, который прослушивает int (обязательно)

IngressStickySessions

Имя Описание Ценность
сходство Сопоставление сеансов с привязкой "нет"
"Липкий"

InitContainer

Имя Описание Ценность
args Аргументы команд запуска контейнера. string[]
команда Команда запуска контейнера. string[]
env Переменные среды контейнера. EnvironmentVar[]
образ Тег образа контейнера. струна
тип изображения Тип изображения. Установите значение CloudBuild, чтобы система могла управлять изображением, где пользователь не сможет обновить образ с помощью поля изображения. Задайте значение ContainerImage для предоставленного пользователем образа. CloudBuild
ContainerImage
имя Имя настраиваемого контейнера. струна
ресурсы Требования к ресурсам контейнера. ContainerResources
volumeMounts Подключение тома контейнера. VolumeMount[]

IpSecurityRestrictionRule

Имя Описание Ценность
действие Разрешить или запретить правила для определения входящего IP-адреса. Примечание. Правила могут состоять только из ALL Allow или ALL Deny "Разрешить"
"Запрет" (обязательно)
описание Опишите правило ограничения IP-адресов, которое отправляется в приложение-контейнер. Это необязательное поле. струна
ipAddressRange Нотация CIDR для сопоставления входящих IP-адресов строка (обязательно)
имя Имя правила ограничения IP-адресов. строка (обязательно)

LoggerSetting

Имя Описание Ценность
уровень Уровень журнала указанного средства ведения журнала. "отладка"
"error"
"info"
"off"
'trace'
"предупреждение" (обязательно)
лесоруб Имя средства ведения журнала. строка (обязательно)

ManagedServiceIdentity

Имя Описание Ценность
тип Тип управляемого удостоверения службы (где разрешены типы SystemAssigned и UserAssigned). "Нет"
SystemAssigned
SystemAssigned, UserAssigned
UserAssigned (обязательно)
userAssignedIdentities Набор назначенных пользователем удостоверений, связанных с ресурсом. Ключи словаря userAssignedIdentities будут идентификаторами ресурсов ARM в форме: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Значения словаря могут быть пустыми объектами ({}) в запросах. UserAssignedIdentities

Microsoft.App/containerApps

Имя Описание Ценность
extendedLocation Сложный тип расширенного расположения. ExtendedLocation
тождество управляемые удостоверения для приложения-контейнера для взаимодействия с другими службами Azure без сохранения секретов или учетных данных в коде. ManagedServiceIdentity
добрый Метаданные, используемые для отображения различных возможностей для ресурсов одного типа; Например, WorkflowApp — это тип Microsoft.App/ContainerApps. При поддержке поставщик ресурсов должен проверить и сохранить это значение. "workflowapp"
местоположение Географическое расположение, в котором находится ресурс строка (обязательно)
managedBy Полный идентификатор ресурса ресурса, который управляет этим ресурсом. Указывает, управляется ли этот ресурс другим ресурсом Azure. В этом случае развертывание полного режима не удаляет ресурс, если он удаляется из шаблона, так как он управляется другим ресурсом. струна
имя Имя ресурса строка (обязательно)
свойства Свойства, относящиеся к ресурсу ContainerApp ContainerAppProperties
Теги Теги ресурсов Словарь имен и значений тегов. См. теги в шаблонах

QueueScaleRule

Имя Описание Ценность
accountName Имя учетной записи хранения. требуется, если для проверки подлинности используется управляемое удостоверение. струна
auth Секреты проверки подлинности для правила масштабирования очереди. ScaleRuleAuth[]
тождество Идентификатор ресурса управляемого удостоверения, назначаемого пользователем, который назначается приложению контейнера или системе для удостоверения, назначаемого системой. струна
queueLength Длина очереди. int
queueName Имя очереди. струна

RegistryCredentials

Имя Описание Ценность
тождество Управляемое удостоверение, используемое для проверки подлинности в реестре контейнеров Azure. Для удостоверений, назначенных пользователем, используйте полный идентификатор ресурса удостоверения, назначаемого пользователем. Для удостоверений, назначенных системой, используйте system струна
passwordSecretRef Имя секрета, содержащего пароль для входа в реестр струна
сервер Сервер реестра контейнеров струна
имя пользователя Имя пользователя реестра контейнеров струна

Режим выполнения

Имя Описание Ценность
dotnet Конфигурация приложения .NET runtimeDotnet
Ява Конфигурация приложения Java RuntimeJava

RuntimeDotnet

Имя Описание Ценность
autoConfigureDataProtection Автоматическая настройка функции защиты ASP.NET Core Data Protection bool

RuntimeJava

Имя Описание Ценность
enableMetrics Включение основных метрик jmx для приложения java bool
javaAgent Возможности диагностики, достигнутые агентом Java RuntimeJavaAgent

RuntimeJavaAgent

Имя Описание Ценность
Включен Включите внедрение агента java для приложения java. bool
лесозаготовка Возможности сценария ведения журнала java. RuntimeJavaAgentLogging

RuntimeJavaAgentLogging

Имя Описание Ценность
loggerSettings Параметры средства ведения журнала для приложения java. LoggerSetting[]

Шкала

Имя Описание Ценность
cooldownPeriod Необязательный. ПЕРИОД KEDA Cooldown. Значение по умолчанию — 300 секунд, если не задано. int
maxReplicas Необязательный. Максимальное количество реплик контейнеров. Значение по умолчанию — 10, если не задано. int
minReplicas Необязательный. Минимальное количество реплик контейнеров. int
pollingInterval Необязательный. Интервал опроса KEDA. Значение по умолчанию — 30 секунд, если не задано. int
Правила Правила масштабирования. ScaleRule[]

ScaleRule

Имя Описание Ценность
azureQueue Масштабирование на основе очереди Azure. QueueScaleRule
обычай Пользовательское правило масштабирования. CustomScaleRule
http Масштабирование на основе HTTP-запросов. HttpScaleRule
имя Имя правила масштабирования струна
протокол tcp Масштабирование на основе tcp-запросов. TcpScaleRule

ScaleRuleAuth

Имя Описание Ценность
secretRef Имя секрета, из которого необходимо извлечь парамс проверки подлинности. струна
triggerParameter Параметр триггера, использующий секрет струна

Секрет

Имя Описание Ценность
тождество Идентификатор ресурса управляемого удостоверения для проверки подлинности в Azure Key Vault или System для использования удостоверения, назначаемого системой. струна
keyVaultUrl URL-адрес Azure Key Vault, указывающий на секрет, на который ссылается приложение контейнера. струна
имя Имя секрета. струна
ценность Значение секрета. струна

Ограничения целостности:
Конфиденциальное значение. Передайте в качестве безопасного параметра.

SecretVolumeItem

Имя Описание Ценность
путь Путь к секрету проекта. Если путь не указан, путь по умолчанию имеет имя секрета, указанного в secretRef. струна
secretRef Имя секрета приложения-контейнера, из которого необходимо извлечь значение секрета. струна

Служба

Имя Описание Ценность
тип Тип службы Dev ContainerApp строка (обязательно)

ServiceBind

Имя Описание Ценность
clientType Тип клиента, который будет использоваться для подключения к службе струна
настраиваемые ключи Настраиваемые ключи для настройки внедренных значений в приложение ServiceBindCustomizedKeys
имя Имя привязки службы струна
serviceId Идентификатор ресурса целевой службы струна

ServiceBindCustomizedKeys

Имя Описание Ценность

TcpScaleRule

Имя Описание Ценность
auth Секреты проверки подлинности для правила масштабирования tcp. ScaleRuleAuth[]
тождество Идентификатор ресурса управляемого удостоверения, назначаемого пользователем, который назначается приложению контейнера или системе для удостоверения, назначаемого системой. струна
метаданные Свойства метаданных для описания правила масштабирования tcp. TcpScaleRuleMetadata

TcpScaleRuleMetadata

Имя Описание Ценность

Шаблон

Имя Описание Ценность
Контейнеры Список определений контейнеров для приложения-контейнера. контейнера[]
initContainers Список специализированных контейнеров, выполняемых перед контейнерами приложений. InitContainer[]
редакцияSuffix Понятный суффикс, добавляемый к имени редакции струна
шкала Масштабирование свойств для приложения-контейнера. масштаб
serviceBinds Список служб приложений-контейнеров, привязанных к приложению ServiceBind[]
terminationGracePeriodSeconds Необязательная длительность в секундах экземпляра приложения-контейнера должна завершиться корректно. Значение должно быть неотрицательно целым числом. Нулевое значение указывает, что немедленно останавливается через сигнал убийства (нет возможности завершить работу). Если это значение равно nil, вместо этого будет использоваться льготный период по умолчанию. Задайте это значение дольше ожидаемого времени очистки для процесса. Значение по умолчанию — 30 секунд. int
Объемы Список определений томов для приложения-контейнера. тома[]

TrackedResourceTags

Имя Описание Ценность

Вес трафика

Имя Описание Ценность
ярлык Связывает метку трафика с редакцией струна
latestRevision Указывает, что вес трафика принадлежит последней стабильной редакции bool
имя редакции Имя редакции струна
вес Вес трафика, назначенный редакции int

UserAssignedIdentities

Имя Описание Ценность

UserAssignedIdentity

Имя Описание Ценность

Том

Имя Описание Ценность
mountOptions Параметры подключения, используемые при подключении общей папки Azure или NFS Azure. Должен быть строкой, разделенной запятыми. струна
имя Имя тома. струна
Секреты Список секретов, добавляемых в том. Если секреты отсутствуют, все секреты в коллекции будут добавлены в том. SecretVolumeItem[]
storageName Имя ресурса хранилища. Не требуется предоставлять значение EmptyDir и Secret. струна
storageType Тип хранилища для тома. Если этот параметр не указан, используйте EmptyDir. AzureFile
'EmptyDir'
'NfsAzureFile'
"Секрет"
'Smb'

VolumeMount

Имя Описание Ценность
mountPath Путь в контейнере, в котором должен быть подключен том. Не должно содержать ":". струна
subPath Путь в томе, из которого должен быть подключен том контейнера. По умолчанию используется значение "" (корневой каталог тома). струна
имя тома Это должно соответствовать имени тома. струна

Примеры краткого руководства

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

Bicep-файл Описание
создание приложения контейнера и среды с реестра Создайте среду приложения-контейнера с базовым приложением контейнера из реестра контейнеров Azure. Она также развертывает рабочую область Log Analytics для хранения журналов.
создает приложение-контейнер с определенным правилом масштабирования HTTP Создайте среду приложения-контейнера с базовым приложением-контейнером, которое масштабируется на основе HTTP-трафика.
создает приложение-контейнер в среды приложений контейнеров Создайте среду приложения-контейнера с базовым приложением контейнера. Она также развертывает рабочую область Log Analytics для хранения журналов.
создает приложение микрослужб Dapr с помощью приложений контейнеров Создайте приложение микрослужб Dapr с помощью контейнерных приложений.
Создает приложение dapr pub-sub servicebus с помощью приложений контейнеров Создайте приложение dapr pub-sub servicebus с помощью контейнерных приложений.
создает два приложения контейнера с среды приложений контейнеров Создайте две среды приложения-контейнера с базовым приложением-контейнером. Она также развертывает рабочую область Log Analytics для хранения журналов.
Создание внешней среды приложения-контейнера с помощью виртуальной сети Создает внешнюю среду приложения-контейнера с виртуальной сетью.
Создает внутреннюю среду приложения-контейнера с виртуальной сети Создает внутреннюю среду приложения-контейнера с виртуальной сетью.

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

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

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

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

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

{
  "type": "Microsoft.App/containerApps",
  "apiVersion": "2024-10-02-preview",
  "name": "string",
  "extendedLocation": {
    "name": "string",
    "type": "string"
  },
  "identity": {
    "type": "string",
    "userAssignedIdentities": {
      "{customized property}": {
      }
    }
  },
  "kind": "string",
  "location": "string",
  "managedBy": "string",
  "properties": {
    "configuration": {
      "activeRevisionsMode": "string",
      "dapr": {
        "appId": "string",
        "appPort": "int",
        "appProtocol": "string",
        "enableApiLogging": "bool",
        "enabled": "bool",
        "httpMaxRequestSize": "int",
        "httpReadBufferSize": "int",
        "logLevel": "string"
      },
      "identitySettings": [
        {
          "identity": "string",
          "lifecycle": "string"
        }
      ],
      "ingress": {
        "additionalPortMappings": [
          {
            "exposedPort": "int",
            "external": "bool",
            "targetPort": "int"
          }
        ],
        "allowInsecure": "bool",
        "clientCertificateMode": "string",
        "corsPolicy": {
          "allowCredentials": "bool",
          "allowedHeaders": [ "string" ],
          "allowedMethods": [ "string" ],
          "allowedOrigins": [ "string" ],
          "exposeHeaders": [ "string" ],
          "maxAge": "int"
        },
        "customDomains": [
          {
            "bindingType": "string",
            "certificateId": "string",
            "name": "string"
          }
        ],
        "exposedPort": "int",
        "external": "bool",
        "ipSecurityRestrictions": [
          {
            "action": "string",
            "description": "string",
            "ipAddressRange": "string",
            "name": "string"
          }
        ],
        "stickySessions": {
          "affinity": "string"
        },
        "targetPort": "int",
        "targetPortHttpScheme": "string",
        "traffic": [
          {
            "label": "string",
            "latestRevision": "bool",
            "revisionName": "string",
            "weight": "int"
          }
        ],
        "transport": "string"
      },
      "maxInactiveRevisions": "int",
      "registries": [
        {
          "identity": "string",
          "passwordSecretRef": "string",
          "server": "string",
          "username": "string"
        }
      ],
      "revisionTransitionThreshold": "int",
      "runtime": {
        "dotnet": {
          "autoConfigureDataProtection": "bool"
        },
        "java": {
          "enableMetrics": "bool",
          "javaAgent": {
            "enabled": "bool",
            "logging": {
              "loggerSettings": [
                {
                  "level": "string",
                  "logger": "string"
                }
              ]
            }
          }
        }
      },
      "secrets": [
        {
          "identity": "string",
          "keyVaultUrl": "string",
          "name": "string",
          "value": "string"
        }
      ],
      "service": {
        "type": "string"
      },
      "targetLabel": "string"
    },
    "environmentId": "string",
    "managedEnvironmentId": "string",
    "patchingConfiguration": {
      "patchingMode": "string"
    },
    "template": {
      "containers": [
        {
          "args": [ "string" ],
          "command": [ "string" ],
          "env": [
            {
              "name": "string",
              "secretRef": "string",
              "value": "string"
            }
          ],
          "image": "string",
          "imageType": "string",
          "name": "string",
          "probes": [
            {
              "failureThreshold": "int",
              "httpGet": {
                "host": "string",
                "httpHeaders": [
                  {
                    "name": "string",
                    "value": "string"
                  }
                ],
                "path": "string",
                "port": "int",
                "scheme": "string"
              },
              "initialDelaySeconds": "int",
              "periodSeconds": "int",
              "successThreshold": "int",
              "tcpSocket": {
                "host": "string",
                "port": "int"
              },
              "terminationGracePeriodSeconds": "int",
              "timeoutSeconds": "int",
              "type": "string"
            }
          ],
          "resources": {
            "cpu": "int",
            "gpu": "int",
            "memory": "string"
          },
          "volumeMounts": [
            {
              "mountPath": "string",
              "subPath": "string",
              "volumeName": "string"
            }
          ]
        }
      ],
      "initContainers": [
        {
          "args": [ "string" ],
          "command": [ "string" ],
          "env": [
            {
              "name": "string",
              "secretRef": "string",
              "value": "string"
            }
          ],
          "image": "string",
          "imageType": "string",
          "name": "string",
          "resources": {
            "cpu": "int",
            "gpu": "int",
            "memory": "string"
          },
          "volumeMounts": [
            {
              "mountPath": "string",
              "subPath": "string",
              "volumeName": "string"
            }
          ]
        }
      ],
      "revisionSuffix": "string",
      "scale": {
        "cooldownPeriod": "int",
        "maxReplicas": "int",
        "minReplicas": "int",
        "pollingInterval": "int",
        "rules": [
          {
            "azureQueue": {
              "accountName": "string",
              "auth": [
                {
                  "secretRef": "string",
                  "triggerParameter": "string"
                }
              ],
              "identity": "string",
              "queueLength": "int",
              "queueName": "string"
            },
            "custom": {
              "auth": [
                {
                  "secretRef": "string",
                  "triggerParameter": "string"
                }
              ],
              "identity": "string",
              "metadata": {
                "{customized property}": "string"
              },
              "type": "string"
            },
            "http": {
              "auth": [
                {
                  "secretRef": "string",
                  "triggerParameter": "string"
                }
              ],
              "identity": "string",
              "metadata": {
                "{customized property}": "string"
              }
            },
            "name": "string",
            "tcp": {
              "auth": [
                {
                  "secretRef": "string",
                  "triggerParameter": "string"
                }
              ],
              "identity": "string",
              "metadata": {
                "{customized property}": "string"
              }
            }
          }
        ]
      },
      "serviceBinds": [
        {
          "clientType": "string",
          "customizedKeys": {
            "{customized property}": "string"
          },
          "name": "string",
          "serviceId": "string"
        }
      ],
      "terminationGracePeriodSeconds": "int",
      "volumes": [
        {
          "mountOptions": "string",
          "name": "string",
          "secrets": [
            {
              "path": "string",
              "secretRef": "string"
            }
          ],
          "storageName": "string",
          "storageType": "string"
        }
      ]
    },
    "workloadProfileName": "string"
  },
  "tags": {
    "{customized property}": "string"
  }
}

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

Конфигурация

Имя Описание Ценность
activeRevisionsMode ActiveRevisionsMode управляет обработкой активных редакций для приложения-контейнера:
<списке><элемент>single: одновременно может быть активна только одна редакция. Нельзя использовать весы трафика. Это значение по умолчанию.</item><элемент>несколько: можно использовать несколько версий, включая дополнительные весы трафика и метки.</item><элемент>Метки: активны только редакции с метками. Весы трафика можно применять к меткам.</item></list>
"Метки"
"Несколько"
"Single"
dapr Конфигурация Dapr для приложения-контейнера. Dapr
identitySettings Необязательные параметры для управляемых удостоверений, назначенных приложению-контейнеру. Если управляемое удостоверение не указано здесь, будут использоваться параметры по умолчанию. IdentitySettings[]
вход Конфигурации входящего трафика. входящего трафика
maxInactiveRevisions Необязательный. Максимальные неактивные редакции приложения-контейнера могут иметь. int
Реестров Коллекция учетных данных реестра частных контейнеров для контейнеров, используемых приложением-контейнером RegistryCredentials[]
revisionTransitionThreshold Необязательный. Процент общего числа реплик, которые необходимо принести перед переходом редакции. Значение по умолчанию равно 100, если он не указан. Значение должно быть больше 0 и меньше или равно 100. int

Ограничения целостности:
Минимальное значение = 1
Максимальное значение = 100
Среды выполнения Конфигурация среды выполнения приложения для приложения-контейнера. среды выполнения
Секреты Коллекция секретов, используемых приложением-контейнером секрет[]
служба Приложение-контейнер, которое должно быть службой приложений для разработки службы
targetLabel Обязательный в режиме редакций меток. Метка для применения к вновь созданной редакции. струна

Контейнер

Имя Описание Ценность
args Аргументы команд запуска контейнера. string[]
команда Команда запуска контейнера. string[]
env Переменные среды контейнера. EnvironmentVar[]
образ Тег образа контейнера. струна
тип изображения Тип изображения. Установите значение CloudBuild, чтобы система могла управлять изображением, где пользователь не сможет обновить образ с помощью поля изображения. Задайте значение ContainerImage для предоставленного пользователем образа. CloudBuild
ContainerImage
имя Имя настраиваемого контейнера. струна
Зонды Список проб для контейнера. ContainerAppProbe[]
ресурсы Требования к ресурсам контейнера. ContainerResources
volumeMounts Подключение тома контейнера. VolumeMount[]

ContainerAppProbe

Имя Описание Ценность
failureThreshold Минимальные последовательные сбои для проверки, которые будут считаться неудачными после успешного выполнения. По умолчанию — 3. Минимальное значение равно 1. Максимальное значение равно 10. int
httpGet HTTPGet указывает http-запрос для выполнения. ContainerAppProbeHttpGet
initialDelaySeconds Количество секунд после запуска контейнера до запуска проб активности. Минимальное значение равно 1. Максимальное значение равно 60. int
periodSeconds Как часто (в секундах) выполнять пробу. По умолчанию — 10 секунд. Минимальное значение равно 1. Максимальное значение — 240. int
successThreshold Минимальные последовательные успехи для пробы, которые будут считаться успешными после сбоя. Значение по умолчанию — 1. Должно быть 1 для жизни и запуска. Минимальное значение равно 1. Максимальное значение равно 10. int
tcpSocket TCPSocket указывает действие, связанное с TCP-портом. Перехватчики TCP еще не поддерживаются. ContainerAppProbeTcpSocket
terminationGracePeriodSeconds Необязательная длительность в секундах модуль pod должен завершиться корректно при сбое пробы. Льготный период — это длительность в секундах после того, как процессы, выполняемые в модуле pod, отправляются сигнал завершения и время принудительного прекращения процессов с помощью сигнала об убийстве. Задайте это значение дольше ожидаемого времени очистки для процесса. Если это значение равно nil, будет использоваться завершение модуля podGracePeriodSeconds. В противном случае это значение переопределяет значение, предоставленное спецификацией pod. Значение должно быть неотрицательно целым числом. Нулевое значение указывает, что немедленно останавливается через сигнал убийства (нет возможности завершить работу). Это альфа-поле и требует включения шлюза функций ProbeTerminationGracePeriod. Максимальное значение — 3600 секунд (1 час) int
timeoutSeconds Количество секунд, после которого время ожидания пробы истекает. По умолчанию используется значение 1 секунды. Минимальное значение равно 1. Максимальное значение — 240. int
тип Тип пробы. "Liveness"
"Готовность"
"Startup"

ContainerAppProbeHttpGet

Имя Описание Ценность
хозяин Имя узла для подключения по умолчанию к IP-адресу pod. Возможно, вы хотите задать "Host" в httpHeaders. струна
httpHeaders Пользовательские заголовки, заданные в запросе. HTTP позволяет повторять заголовки. ContainerAppProbeHttpGetHttpHeadersItem[]
путь Путь к доступу на HTTP-сервере. струна
порт Имя или номер порта для доступа к контейнеру. Число должно находиться в диапазоне от 1 до 65535. Имя должно быть IANA_SVC_NAME. int (обязательно)
схема Схема, используемая для подключения к узлу. По умолчанию используется протокол HTTP. "HTTP"
"HTTPS"

ContainerAppProbeHttpGetHttpHeadersItem

Имя Описание Ценность
имя Имя поля заголовка строка (обязательно)
ценность Значение поля заголовка строка (обязательно)

ContainerAppProbeTcpSocket

Имя Описание Ценность
хозяин Необязательно. Имя узла для подключения по умолчанию используется для IP-адреса pod. струна
порт Номер или имя порта для доступа к контейнеру. Число должно находиться в диапазоне от 1 до 65535. Имя должно быть IANA_SVC_NAME. int (обязательно)

ContainerAppProperties

Имя Описание Ценность
конфигурация Свойства конфигурации приложений контейнеров, отличные от версий. конфигурации
environmentId Идентификатор ресурса среды. струна
managedEnvironmentId Устаревшие. Идентификатор ресурса среды приложения-контейнера. струна
PatchingConfiguration Настройка автоматического исправления для приложения-контейнера. ContainerAppPropertiesPatchingConfiguration
шаблон Определение приложения с версиями контейнера. шаблона
workloadProfileName Имя профиля рабочей нагрузки для закрепления для выполнения приложения контейнера. струна

ContainerAppPropertiesPatchingConfiguration

Имя Описание Ценность
PatchingMode Режим исправления для приложения контейнера. Значение NULL или значение по умолчанию в этом поле будет интерпретировано как автоматическое по RP. Автоматический режим будет автоматически применять доступные исправления. В ручном режиме пользователю потребуется вручную применить исправления. Отключенный режим остановит обнаружение исправлений и автоматическое исправление. "Автоматически"
"Отключено"
"Вручную"

ContainerResources

Имя Описание Ценность
ЦПУ Обязательный ЦП в ядрах, например 0,5 int
Графический процессор Обязательный GPU в ядрах для приложения на основе GPU, например 1.0 int
память Требуемая память, например "250 Мб" струна

CorsPolicy

Имя Описание Ценность
allowCredentials Указывает, разрешает ли ресурс учетные данные bool
allowedHeaders Указывает содержимое заголовка access-control-allow-headers string[]
allowedMethods Указывает содержимое заголовка метода access-control-allow-methods string[]
allowedOrigins Указывает содержимое заголовка access-control-allow-origins string[] (обязательно)
exposeHeaders Указывает содержимое заголовка access-control-expose-headers string[]
maxAge Указывает содержимое заголовка access-control-max-age int

CustomDomain

Имя Описание Ценность
bindingType Тип привязки личного домена. "Авто"
"Отключено"
'SniEnabled'
certificateId Идентификатор ресурса сертификата, привязанного к этому имени узла. Должен существовать в управляемой среде. струна
имя Имя узла. строка (обязательно)

CustomScaleRule

Имя Описание Ценность
auth Секреты проверки подлинности для настраиваемого правила масштабирования. ScaleRuleAuth[]
тождество Идентификатор ресурса управляемого удостоверения, назначаемого пользователем, который назначается приложению контейнера или системе для удостоверения, назначаемого системой. струна
метаданные Свойства метаданных для описания настраиваемого правила масштабирования. CustomScaleRuleMetadata
тип Тип настраиваемого правила масштабирования
например: azure-servicebus, redis и т. д.
струна

CustomScaleRuleMetadata

Имя Описание Ценность

Dapr

Имя Описание Ценность
appId Идентификатор приложения Dapr струна
appPort Сообщает Dapr, какой порт приложения прослушивается int
appProtocol Сообщает Dapr, какой протокол использует приложение. Допустимые параметры: http и grpc. Значение по умолчанию — http 'grpc'
"http"
enableApiLogging Включает ведение журнала API для бокового автомобиля Dapr bool
Включен Логическое значение, указывающее, включен ли боковой автомобиль Dapr bool
httpMaxRequestSize Увеличение максимального размера параметра http и grpc-серверов текста запроса в МБ для обработки отправки больших файлов. Значение по умолчанию — 4 МБ. int
httpReadBufferSize Максимальный размер буфера чтения заголовка HTTP в КБ для обработки при отправке заголовков с несколькими КБ. Значение по умолчанию — 65 КБ. int
LogLevel Задает уровень журнала для бокового автомобиля Dapr. Допустимые значения: отладка, информация, предупреждение, ошибка. По умолчанию используется информация. "отладка"
"error"
"info"
"предупреждать"

EnvironmentVar

Имя Описание Ценность
имя Имя переменной среды. струна
secretRef Имя секрета приложения контейнера, из которого требуется извлечь значение переменной среды. струна
ценность Значение переменной среды, отличной от секрета. струна

ExtendedLocation

Имя Описание Ценность
имя Имя расширенного расположения. струна
тип Тип расширенного расположения. CustomLocation

HttpScaleRule

Имя Описание Ценность
auth Секреты проверки подлинности для настраиваемого правила масштабирования. ScaleRuleAuth[]
тождество Идентификатор ресурса управляемого удостоверения, назначаемого пользователем, который назначается приложению контейнера или системе для удостоверения, назначаемого системой. струна
метаданные Свойства метаданных для описания правила масштабирования HTTP. HttpScaleRuleMetadata

HttpScaleRuleMetadata

Имя Описание Ценность

IdentitySettings

Имя Описание Ценность
тождество Идентификатор ресурса управляемого удостоверения, назначаемого пользователем, который назначается приложению контейнера или системе для удостоверения, назначаемого системой. строка (обязательно)
жизненный цикл Используется для выбора этапов жизненного цикла приложения-контейнера, в течение которого должно быть доступно управляемое удостоверение. "Все"
Init
"Main"
"Нет"

Вход

Имя Описание Ценность
additionalPortMappings Параметры для предоставления дополнительных портов в приложении-контейнере IngressPortMapping[]
allowInsecure Логическое значение, указывающее, разрешено ли http-подключения. Если задано значение false HTTP-подключений, автоматически перенаправляются в подключения HTTPS. bool
clientCertificateMode Режим сертификата клиента для проверки подлинности mTLS. Игнорировать указывает, что сервер удаляет сертификат клиента при переадресации. Принять указывает, что сервер перенаправит сертификат клиента, но не требует сертификата клиента. Требовать, чтобы сервер должен иметь сертификат клиента. "принять"
"игнорировать"
"требовать"
corsPolicy Политика CORS для приложения-контейнера CorsPolicy
customDomains Привязки личного домена для имен узлов контейнерных приложений. CustomDomain[]
exposedPort Предоставленный порт в контейнерах для tcp-трафика из входящего трафика int
внешний Bool, указывающий, предоставляет ли приложение внешнюю конечную точку HTTP bool
ipSecurityRestrictions Правила ограничения входящих IP-адресов. IpSecurityRestrictionRule[]
stickySessions Липкие сеансы для единого режима редакции IngressStickySessions
targetPort Целевой порт в контейнерах для трафика из входящего трафика int
targetPortHttpScheme Будет ли http-приложение прослушивать http или https "http"
Https
движение Вес трафика для редакций приложения по весу трафика[]
транспорт Протокол входящего трафика "Auto"
"http"
"http2"
Tcp

IngressPortMapping

Имя Описание Ценность
exposedPort Указывает предоставленный порт для целевого порта. Если он не указан, по умолчанию используется целевой порт. int
внешний Указывает, доступен ли порт приложения за пределами среды. bool (обязательно)
targetPort Указывает контейнер пользователя порта, который прослушивает int (обязательно)

IngressStickySessions

Имя Описание Ценность
сходство Сопоставление сеансов с привязкой "нет"
"Липкий"

InitContainer

Имя Описание Ценность
args Аргументы команд запуска контейнера. string[]
команда Команда запуска контейнера. string[]
env Переменные среды контейнера. EnvironmentVar[]
образ Тег образа контейнера. струна
тип изображения Тип изображения. Установите значение CloudBuild, чтобы система могла управлять изображением, где пользователь не сможет обновить образ с помощью поля изображения. Задайте значение ContainerImage для предоставленного пользователем образа. CloudBuild
ContainerImage
имя Имя настраиваемого контейнера. струна
ресурсы Требования к ресурсам контейнера. ContainerResources
volumeMounts Подключение тома контейнера. VolumeMount[]

IpSecurityRestrictionRule

Имя Описание Ценность
действие Разрешить или запретить правила для определения входящего IP-адреса. Примечание. Правила могут состоять только из ALL Allow или ALL Deny "Разрешить"
"Запрет" (обязательно)
описание Опишите правило ограничения IP-адресов, которое отправляется в приложение-контейнер. Это необязательное поле. струна
ipAddressRange Нотация CIDR для сопоставления входящих IP-адресов строка (обязательно)
имя Имя правила ограничения IP-адресов. строка (обязательно)

LoggerSetting

Имя Описание Ценность
уровень Уровень журнала указанного средства ведения журнала. "отладка"
"error"
"info"
"off"
'trace'
"предупреждение" (обязательно)
лесоруб Имя средства ведения журнала. строка (обязательно)

ManagedServiceIdentity

Имя Описание Ценность
тип Тип управляемого удостоверения службы (где разрешены типы SystemAssigned и UserAssigned). "Нет"
SystemAssigned
SystemAssigned, UserAssigned
UserAssigned (обязательно)
userAssignedIdentities Набор назначенных пользователем удостоверений, связанных с ресурсом. Ключи словаря userAssignedIdentities будут идентификаторами ресурсов ARM в форме: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Значения словаря могут быть пустыми объектами ({}) в запросах. UserAssignedIdentities

Microsoft.App/containerApps

Имя Описание Ценность
apiVersion Версия API '2024-10-02-preview'
extendedLocation Сложный тип расширенного расположения. ExtendedLocation
тождество управляемые удостоверения для приложения-контейнера для взаимодействия с другими службами Azure без сохранения секретов или учетных данных в коде. ManagedServiceIdentity
добрый Метаданные, используемые для отображения различных возможностей для ресурсов одного типа; Например, WorkflowApp — это тип Microsoft.App/ContainerApps. При поддержке поставщик ресурсов должен проверить и сохранить это значение. "workflowapp"
местоположение Географическое расположение, в котором находится ресурс строка (обязательно)
managedBy Полный идентификатор ресурса ресурса, который управляет этим ресурсом. Указывает, управляется ли этот ресурс другим ресурсом Azure. В этом случае развертывание полного режима не удаляет ресурс, если он удаляется из шаблона, так как он управляется другим ресурсом. струна
имя Имя ресурса строка (обязательно)
свойства Свойства, относящиеся к ресурсу ContainerApp ContainerAppProperties
Теги Теги ресурсов Словарь имен и значений тегов. См. теги в шаблонах
тип Тип ресурса "Microsoft.App/containerApps"

QueueScaleRule

Имя Описание Ценность
accountName Имя учетной записи хранения. требуется, если для проверки подлинности используется управляемое удостоверение. струна
auth Секреты проверки подлинности для правила масштабирования очереди. ScaleRuleAuth[]
тождество Идентификатор ресурса управляемого удостоверения, назначаемого пользователем, который назначается приложению контейнера или системе для удостоверения, назначаемого системой. струна
queueLength Длина очереди. int
queueName Имя очереди. струна

RegistryCredentials

Имя Описание Ценность
тождество Управляемое удостоверение, используемое для проверки подлинности в реестре контейнеров Azure. Для удостоверений, назначенных пользователем, используйте полный идентификатор ресурса удостоверения, назначаемого пользователем. Для удостоверений, назначенных системой, используйте system струна
passwordSecretRef Имя секрета, содержащего пароль для входа в реестр струна
сервер Сервер реестра контейнеров струна
имя пользователя Имя пользователя реестра контейнеров струна

Режим выполнения

Имя Описание Ценность
dotnet Конфигурация приложения .NET runtimeDotnet
Ява Конфигурация приложения Java RuntimeJava

RuntimeDotnet

Имя Описание Ценность
autoConfigureDataProtection Автоматическая настройка функции защиты ASP.NET Core Data Protection bool

RuntimeJava

Имя Описание Ценность
enableMetrics Включение основных метрик jmx для приложения java bool
javaAgent Возможности диагностики, достигнутые агентом Java RuntimeJavaAgent

RuntimeJavaAgent

Имя Описание Ценность
Включен Включите внедрение агента java для приложения java. bool
лесозаготовка Возможности сценария ведения журнала java. RuntimeJavaAgentLogging

RuntimeJavaAgentLogging

Имя Описание Ценность
loggerSettings Параметры средства ведения журнала для приложения java. LoggerSetting[]

Шкала

Имя Описание Ценность
cooldownPeriod Необязательный. ПЕРИОД KEDA Cooldown. Значение по умолчанию — 300 секунд, если не задано. int
maxReplicas Необязательный. Максимальное количество реплик контейнеров. Значение по умолчанию — 10, если не задано. int
minReplicas Необязательный. Минимальное количество реплик контейнеров. int
pollingInterval Необязательный. Интервал опроса KEDA. Значение по умолчанию — 30 секунд, если не задано. int
Правила Правила масштабирования. ScaleRule[]

ScaleRule

Имя Описание Ценность
azureQueue Масштабирование на основе очереди Azure. QueueScaleRule
обычай Пользовательское правило масштабирования. CustomScaleRule
http Масштабирование на основе HTTP-запросов. HttpScaleRule
имя Имя правила масштабирования струна
протокол tcp Масштабирование на основе tcp-запросов. TcpScaleRule

ScaleRuleAuth

Имя Описание Ценность
secretRef Имя секрета, из которого необходимо извлечь парамс проверки подлинности. струна
triggerParameter Параметр триггера, использующий секрет струна

Секрет

Имя Описание Ценность
тождество Идентификатор ресурса управляемого удостоверения для проверки подлинности в Azure Key Vault или System для использования удостоверения, назначаемого системой. струна
keyVaultUrl URL-адрес Azure Key Vault, указывающий на секрет, на который ссылается приложение контейнера. струна
имя Имя секрета. струна
ценность Значение секрета. струна

Ограничения целостности:
Конфиденциальное значение. Передайте в качестве безопасного параметра.

SecretVolumeItem

Имя Описание Ценность
путь Путь к секрету проекта. Если путь не указан, путь по умолчанию имеет имя секрета, указанного в secretRef. струна
secretRef Имя секрета приложения-контейнера, из которого необходимо извлечь значение секрета. струна

Служба

Имя Описание Ценность
тип Тип службы Dev ContainerApp строка (обязательно)

ServiceBind

Имя Описание Ценность
clientType Тип клиента, который будет использоваться для подключения к службе струна
настраиваемые ключи Настраиваемые ключи для настройки внедренных значений в приложение ServiceBindCustomizedKeys
имя Имя привязки службы струна
serviceId Идентификатор ресурса целевой службы струна

ServiceBindCustomizedKeys

Имя Описание Ценность

TcpScaleRule

Имя Описание Ценность
auth Секреты проверки подлинности для правила масштабирования tcp. ScaleRuleAuth[]
тождество Идентификатор ресурса управляемого удостоверения, назначаемого пользователем, который назначается приложению контейнера или системе для удостоверения, назначаемого системой. струна
метаданные Свойства метаданных для описания правила масштабирования tcp. TcpScaleRuleMetadata

TcpScaleRuleMetadata

Имя Описание Ценность

Шаблон

Имя Описание Ценность
Контейнеры Список определений контейнеров для приложения-контейнера. контейнера[]
initContainers Список специализированных контейнеров, выполняемых перед контейнерами приложений. InitContainer[]
редакцияSuffix Понятный суффикс, добавляемый к имени редакции струна
шкала Масштабирование свойств для приложения-контейнера. масштаб
serviceBinds Список служб приложений-контейнеров, привязанных к приложению ServiceBind[]
terminationGracePeriodSeconds Необязательная длительность в секундах экземпляра приложения-контейнера должна завершиться корректно. Значение должно быть неотрицательно целым числом. Нулевое значение указывает, что немедленно останавливается через сигнал убийства (нет возможности завершить работу). Если это значение равно nil, вместо этого будет использоваться льготный период по умолчанию. Задайте это значение дольше ожидаемого времени очистки для процесса. Значение по умолчанию — 30 секунд. int
Объемы Список определений томов для приложения-контейнера. тома[]

TrackedResourceTags

Имя Описание Ценность

Вес трафика

Имя Описание Ценность
ярлык Связывает метку трафика с редакцией струна
latestRevision Указывает, что вес трафика принадлежит последней стабильной редакции bool
имя редакции Имя редакции струна
вес Вес трафика, назначенный редакции int

UserAssignedIdentities

Имя Описание Ценность

UserAssignedIdentity

Имя Описание Ценность

Том

Имя Описание Ценность
mountOptions Параметры подключения, используемые при подключении общей папки Azure или NFS Azure. Должен быть строкой, разделенной запятыми. струна
имя Имя тома. струна
Секреты Список секретов, добавляемых в том. Если секреты отсутствуют, все секреты в коллекции будут добавлены в том. SecretVolumeItem[]
storageName Имя ресурса хранилища. Не требуется предоставлять значение EmptyDir и Secret. струна
storageType Тип хранилища для тома. Если этот параметр не указан, используйте EmptyDir. AzureFile
'EmptyDir'
'NfsAzureFile'
"Секрет"
'Smb'

VolumeMount

Имя Описание Ценность
mountPath Путь в контейнере, в котором должен быть подключен том. Не должно содержать ":". струна
subPath Путь в томе, из которого должен быть подключен том контейнера. По умолчанию используется значение "" (корневой каталог тома). струна
имя тома Это должно соответствовать имени тома. струна

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

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

Шаблон Описание
создание приложения контейнера и среды с реестра

развертывание в Azure
Создайте среду приложения-контейнера с базовым приложением контейнера из реестра контейнеров Azure. Она также развертывает рабочую область Log Analytics для хранения журналов.
создает приложение-контейнер с определенным правилом масштабирования HTTP

развертывание в Azure
Создайте среду приложения-контейнера с базовым приложением-контейнером, которое масштабируется на основе HTTP-трафика.
создает приложение-контейнер в среды приложений контейнеров

развертывание в Azure
Создайте среду приложения-контейнера с базовым приложением контейнера. Она также развертывает рабочую область Log Analytics для хранения журналов.
создает приложение микрослужб Dapr с помощью приложений контейнеров

развертывание в Azure
Создайте приложение микрослужб Dapr с помощью контейнерных приложений.
Создает приложение dapr pub-sub servicebus с помощью приложений контейнеров

развертывание в Azure
Создайте приложение dapr pub-sub servicebus с помощью контейнерных приложений.
создает два приложения контейнера с среды приложений контейнеров

развертывание в Azure
Создайте две среды приложения-контейнера с базовым приложением-контейнером. Она также развертывает рабочую область Log Analytics для хранения журналов.
Создание внешней среды приложения-контейнера с помощью виртуальной сети

развертывание в Azure
Создает внешнюю среду приложения-контейнера с виртуальной сетью.
Создает внутреннюю среду приложения-контейнера с виртуальной сети

развертывание в Azure
Создает внутреннюю среду приложения-контейнера с виртуальной сетью.

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

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

  • групп ресурсов

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

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

Чтобы создать ресурс Microsoft.App/containerApps, добавьте следующий объект Terraform в шаблон.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.App/containerApps@2024-10-02-preview"
  name = "string"
  identity = {
    type = "string"
    userAssignedIdentities = {
      {customized property} = {
      }
    }
  }
  kind = "string"
  location = "string"
  managedBy = "string"
  tags = {
    {customized property} = "string"
  }
  body = jsonencode({
    extendedLocation = {
      name = "string"
      type = "string"
    }
    properties = {
      configuration = {
        activeRevisionsMode = "string"
        dapr = {
          appId = "string"
          appPort = int
          appProtocol = "string"
          enableApiLogging = bool
          enabled = bool
          httpMaxRequestSize = int
          httpReadBufferSize = int
          logLevel = "string"
        }
        identitySettings = [
          {
            identity = "string"
            lifecycle = "string"
          }
        ]
        ingress = {
          additionalPortMappings = [
            {
              exposedPort = int
              external = bool
              targetPort = int
            }
          ]
          allowInsecure = bool
          clientCertificateMode = "string"
          corsPolicy = {
            allowCredentials = bool
            allowedHeaders = [
              "string"
            ]
            allowedMethods = [
              "string"
            ]
            allowedOrigins = [
              "string"
            ]
            exposeHeaders = [
              "string"
            ]
            maxAge = int
          }
          customDomains = [
            {
              bindingType = "string"
              certificateId = "string"
              name = "string"
            }
          ]
          exposedPort = int
          external = bool
          ipSecurityRestrictions = [
            {
              action = "string"
              description = "string"
              ipAddressRange = "string"
              name = "string"
            }
          ]
          stickySessions = {
            affinity = "string"
          }
          targetPort = int
          targetPortHttpScheme = "string"
          traffic = [
            {
              label = "string"
              latestRevision = bool
              revisionName = "string"
              weight = int
            }
          ]
          transport = "string"
        }
        maxInactiveRevisions = int
        registries = [
          {
            identity = "string"
            passwordSecretRef = "string"
            server = "string"
            username = "string"
          }
        ]
        revisionTransitionThreshold = int
        runtime = {
          dotnet = {
            autoConfigureDataProtection = bool
          }
          java = {
            enableMetrics = bool
            javaAgent = {
              enabled = bool
              logging = {
                loggerSettings = [
                  {
                    level = "string"
                    logger = "string"
                  }
                ]
              }
            }
          }
        }
        secrets = [
          {
            identity = "string"
            keyVaultUrl = "string"
            name = "string"
            value = "string"
          }
        ]
        service = {
          type = "string"
        }
        targetLabel = "string"
      }
      environmentId = "string"
      managedEnvironmentId = "string"
      patchingConfiguration = {
        patchingMode = "string"
      }
      template = {
        containers = [
          {
            args = [
              "string"
            ]
            command = [
              "string"
            ]
            env = [
              {
                name = "string"
                secretRef = "string"
                value = "string"
              }
            ]
            image = "string"
            imageType = "string"
            name = "string"
            probes = [
              {
                failureThreshold = int
                httpGet = {
                  host = "string"
                  httpHeaders = [
                    {
                      name = "string"
                      value = "string"
                    }
                  ]
                  path = "string"
                  port = int
                  scheme = "string"
                }
                initialDelaySeconds = int
                periodSeconds = int
                successThreshold = int
                tcpSocket = {
                  host = "string"
                  port = int
                }
                terminationGracePeriodSeconds = int
                timeoutSeconds = int
                type = "string"
              }
            ]
            resources = {
              cpu = int
              gpu = int
              memory = "string"
            }
            volumeMounts = [
              {
                mountPath = "string"
                subPath = "string"
                volumeName = "string"
              }
            ]
          }
        ]
        initContainers = [
          {
            args = [
              "string"
            ]
            command = [
              "string"
            ]
            env = [
              {
                name = "string"
                secretRef = "string"
                value = "string"
              }
            ]
            image = "string"
            imageType = "string"
            name = "string"
            resources = {
              cpu = int
              gpu = int
              memory = "string"
            }
            volumeMounts = [
              {
                mountPath = "string"
                subPath = "string"
                volumeName = "string"
              }
            ]
          }
        ]
        revisionSuffix = "string"
        scale = {
          cooldownPeriod = int
          maxReplicas = int
          minReplicas = int
          pollingInterval = int
          rules = [
            {
              azureQueue = {
                accountName = "string"
                auth = [
                  {
                    secretRef = "string"
                    triggerParameter = "string"
                  }
                ]
                identity = "string"
                queueLength = int
                queueName = "string"
              }
              custom = {
                auth = [
                  {
                    secretRef = "string"
                    triggerParameter = "string"
                  }
                ]
                identity = "string"
                metadata = {
                  {customized property} = "string"
                }
                type = "string"
              }
              http = {
                auth = [
                  {
                    secretRef = "string"
                    triggerParameter = "string"
                  }
                ]
                identity = "string"
                metadata = {
                  {customized property} = "string"
                }
              }
              name = "string"
              tcp = {
                auth = [
                  {
                    secretRef = "string"
                    triggerParameter = "string"
                  }
                ]
                identity = "string"
                metadata = {
                  {customized property} = "string"
                }
              }
            }
          ]
        }
        serviceBinds = [
          {
            clientType = "string"
            customizedKeys = {
              {customized property} = "string"
            }
            name = "string"
            serviceId = "string"
          }
        ]
        terminationGracePeriodSeconds = int
        volumes = [
          {
            mountOptions = "string"
            name = "string"
            secrets = [
              {
                path = "string"
                secretRef = "string"
              }
            ]
            storageName = "string"
            storageType = "string"
          }
        ]
      }
      workloadProfileName = "string"
    }
  })
}

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

Конфигурация

Имя Описание Ценность
activeRevisionsMode ActiveRevisionsMode управляет обработкой активных редакций для приложения-контейнера:
<списке><элемент>single: одновременно может быть активна только одна редакция. Нельзя использовать весы трафика. Это значение по умолчанию.</item><элемент>несколько: можно использовать несколько версий, включая дополнительные весы трафика и метки.</item><элемент>Метки: активны только редакции с метками. Весы трафика можно применять к меткам.</item></list>
"Метки"
"Несколько"
"Single"
dapr Конфигурация Dapr для приложения-контейнера. Dapr
identitySettings Необязательные параметры для управляемых удостоверений, назначенных приложению-контейнеру. Если управляемое удостоверение не указано здесь, будут использоваться параметры по умолчанию. IdentitySettings[]
вход Конфигурации входящего трафика. входящего трафика
maxInactiveRevisions Необязательный. Максимальные неактивные редакции приложения-контейнера могут иметь. int
Реестров Коллекция учетных данных реестра частных контейнеров для контейнеров, используемых приложением-контейнером RegistryCredentials[]
revisionTransitionThreshold Необязательный. Процент общего числа реплик, которые необходимо принести перед переходом редакции. Значение по умолчанию равно 100, если он не указан. Значение должно быть больше 0 и меньше или равно 100. int

Ограничения целостности:
Минимальное значение = 1
Максимальное значение = 100
Среды выполнения Конфигурация среды выполнения приложения для приложения-контейнера. среды выполнения
Секреты Коллекция секретов, используемых приложением-контейнером секрет[]
служба Приложение-контейнер, которое должно быть службой приложений для разработки службы
targetLabel Обязательный в режиме редакций меток. Метка для применения к вновь созданной редакции. струна

Контейнер

Имя Описание Ценность
args Аргументы команд запуска контейнера. string[]
команда Команда запуска контейнера. string[]
env Переменные среды контейнера. EnvironmentVar[]
образ Тег образа контейнера. струна
тип изображения Тип изображения. Установите значение CloudBuild, чтобы система могла управлять изображением, где пользователь не сможет обновить образ с помощью поля изображения. Задайте значение ContainerImage для предоставленного пользователем образа. CloudBuild
ContainerImage
имя Имя настраиваемого контейнера. струна
Зонды Список проб для контейнера. ContainerAppProbe[]
ресурсы Требования к ресурсам контейнера. ContainerResources
volumeMounts Подключение тома контейнера. VolumeMount[]

ContainerAppProbe

Имя Описание Ценность
failureThreshold Минимальные последовательные сбои для проверки, которые будут считаться неудачными после успешного выполнения. По умолчанию — 3. Минимальное значение равно 1. Максимальное значение равно 10. int
httpGet HTTPGet указывает http-запрос для выполнения. ContainerAppProbeHttpGet
initialDelaySeconds Количество секунд после запуска контейнера до запуска проб активности. Минимальное значение равно 1. Максимальное значение равно 60. int
periodSeconds Как часто (в секундах) выполнять пробу. По умолчанию — 10 секунд. Минимальное значение равно 1. Максимальное значение — 240. int
successThreshold Минимальные последовательные успехи для пробы, которые будут считаться успешными после сбоя. Значение по умолчанию — 1. Должно быть 1 для жизни и запуска. Минимальное значение равно 1. Максимальное значение равно 10. int
tcpSocket TCPSocket указывает действие, связанное с TCP-портом. Перехватчики TCP еще не поддерживаются. ContainerAppProbeTcpSocket
terminationGracePeriodSeconds Необязательная длительность в секундах модуль pod должен завершиться корректно при сбое пробы. Льготный период — это длительность в секундах после того, как процессы, выполняемые в модуле pod, отправляются сигнал завершения и время принудительного прекращения процессов с помощью сигнала об убийстве. Задайте это значение дольше ожидаемого времени очистки для процесса. Если это значение равно nil, будет использоваться завершение модуля podGracePeriodSeconds. В противном случае это значение переопределяет значение, предоставленное спецификацией pod. Значение должно быть неотрицательно целым числом. Нулевое значение указывает, что немедленно останавливается через сигнал убийства (нет возможности завершить работу). Это альфа-поле и требует включения шлюза функций ProbeTerminationGracePeriod. Максимальное значение — 3600 секунд (1 час) int
timeoutSeconds Количество секунд, после которого время ожидания пробы истекает. По умолчанию используется значение 1 секунды. Минимальное значение равно 1. Максимальное значение — 240. int
тип Тип пробы. "Liveness"
"Готовность"
"Startup"

ContainerAppProbeHttpGet

Имя Описание Ценность
хозяин Имя узла для подключения по умолчанию к IP-адресу pod. Возможно, вы хотите задать "Host" в httpHeaders. струна
httpHeaders Пользовательские заголовки, заданные в запросе. HTTP позволяет повторять заголовки. ContainerAppProbeHttpGetHttpHeadersItem[]
путь Путь к доступу на HTTP-сервере. струна
порт Имя или номер порта для доступа к контейнеру. Число должно находиться в диапазоне от 1 до 65535. Имя должно быть IANA_SVC_NAME. int (обязательно)
схема Схема, используемая для подключения к узлу. По умолчанию используется протокол HTTP. "HTTP"
"HTTPS"

ContainerAppProbeHttpGetHttpHeadersItem

Имя Описание Ценность
имя Имя поля заголовка строка (обязательно)
ценность Значение поля заголовка строка (обязательно)

ContainerAppProbeTcpSocket

Имя Описание Ценность
хозяин Необязательно. Имя узла для подключения по умолчанию используется для IP-адреса pod. струна
порт Номер или имя порта для доступа к контейнеру. Число должно находиться в диапазоне от 1 до 65535. Имя должно быть IANA_SVC_NAME. int (обязательно)

ContainerAppProperties

Имя Описание Ценность
конфигурация Свойства конфигурации приложений контейнеров, отличные от версий. конфигурации
environmentId Идентификатор ресурса среды. струна
managedEnvironmentId Устаревшие. Идентификатор ресурса среды приложения-контейнера. струна
PatchingConfiguration Настройка автоматического исправления для приложения-контейнера. ContainerAppPropertiesPatchingConfiguration
шаблон Определение приложения с версиями контейнера. шаблона
workloadProfileName Имя профиля рабочей нагрузки для закрепления для выполнения приложения контейнера. струна

ContainerAppPropertiesPatchingConfiguration

Имя Описание Ценность
PatchingMode Режим исправления для приложения контейнера. Значение NULL или значение по умолчанию в этом поле будет интерпретировано как автоматическое по RP. Автоматический режим будет автоматически применять доступные исправления. В ручном режиме пользователю потребуется вручную применить исправления. Отключенный режим остановит обнаружение исправлений и автоматическое исправление. "Автоматически"
"Отключено"
"Вручную"

ContainerResources

Имя Описание Ценность
ЦПУ Обязательный ЦП в ядрах, например 0,5 int
Графический процессор Обязательный GPU в ядрах для приложения на основе GPU, например 1.0 int
память Требуемая память, например "250 Мб" струна

CorsPolicy

Имя Описание Ценность
allowCredentials Указывает, разрешает ли ресурс учетные данные bool
allowedHeaders Указывает содержимое заголовка access-control-allow-headers string[]
allowedMethods Указывает содержимое заголовка метода access-control-allow-methods string[]
allowedOrigins Указывает содержимое заголовка access-control-allow-origins string[] (обязательно)
exposeHeaders Указывает содержимое заголовка access-control-expose-headers string[]
maxAge Указывает содержимое заголовка access-control-max-age int

CustomDomain

Имя Описание Ценность
bindingType Тип привязки личного домена. "Авто"
"Отключено"
'SniEnabled'
certificateId Идентификатор ресурса сертификата, привязанного к этому имени узла. Должен существовать в управляемой среде. струна
имя Имя узла. строка (обязательно)

CustomScaleRule

Имя Описание Ценность
auth Секреты проверки подлинности для настраиваемого правила масштабирования. ScaleRuleAuth[]
тождество Идентификатор ресурса управляемого удостоверения, назначаемого пользователем, который назначается приложению контейнера или системе для удостоверения, назначаемого системой. струна
метаданные Свойства метаданных для описания настраиваемого правила масштабирования. CustomScaleRuleMetadata
тип Тип настраиваемого правила масштабирования
например: azure-servicebus, redis и т. д.
струна

CustomScaleRuleMetadata

Имя Описание Ценность

Dapr

Имя Описание Ценность
appId Идентификатор приложения Dapr струна
appPort Сообщает Dapr, какой порт приложения прослушивается int
appProtocol Сообщает Dapr, какой протокол использует приложение. Допустимые параметры: http и grpc. Значение по умолчанию — http 'grpc'
"http"
enableApiLogging Включает ведение журнала API для бокового автомобиля Dapr bool
Включен Логическое значение, указывающее, включен ли боковой автомобиль Dapr bool
httpMaxRequestSize Увеличение максимального размера параметра http и grpc-серверов текста запроса в МБ для обработки отправки больших файлов. Значение по умолчанию — 4 МБ. int
httpReadBufferSize Максимальный размер буфера чтения заголовка HTTP в КБ для обработки при отправке заголовков с несколькими КБ. Значение по умолчанию — 65 КБ. int
LogLevel Задает уровень журнала для бокового автомобиля Dapr. Допустимые значения: отладка, информация, предупреждение, ошибка. По умолчанию используется информация. "отладка"
"error"
"info"
"предупреждать"

EnvironmentVar

Имя Описание Ценность
имя Имя переменной среды. струна
secretRef Имя секрета приложения контейнера, из которого требуется извлечь значение переменной среды. струна
ценность Значение переменной среды, отличной от секрета. струна

ExtendedLocation

Имя Описание Ценность
имя Имя расширенного расположения. струна
тип Тип расширенного расположения. CustomLocation

HttpScaleRule

Имя Описание Ценность
auth Секреты проверки подлинности для настраиваемого правила масштабирования. ScaleRuleAuth[]
тождество Идентификатор ресурса управляемого удостоверения, назначаемого пользователем, который назначается приложению контейнера или системе для удостоверения, назначаемого системой. струна
метаданные Свойства метаданных для описания правила масштабирования HTTP. HttpScaleRuleMetadata

HttpScaleRuleMetadata

Имя Описание Ценность

IdentitySettings

Имя Описание Ценность
тождество Идентификатор ресурса управляемого удостоверения, назначаемого пользователем, который назначается приложению контейнера или системе для удостоверения, назначаемого системой. строка (обязательно)
жизненный цикл Используется для выбора этапов жизненного цикла приложения-контейнера, в течение которого должно быть доступно управляемое удостоверение. "Все"
Init
"Main"
"Нет"

Вход

Имя Описание Ценность
additionalPortMappings Параметры для предоставления дополнительных портов в приложении-контейнере IngressPortMapping[]
allowInsecure Логическое значение, указывающее, разрешено ли http-подключения. Если задано значение false HTTP-подключений, автоматически перенаправляются в подключения HTTPS. bool
clientCertificateMode Режим сертификата клиента для проверки подлинности mTLS. Игнорировать указывает, что сервер удаляет сертификат клиента при переадресации. Принять указывает, что сервер перенаправит сертификат клиента, но не требует сертификата клиента. Требовать, чтобы сервер должен иметь сертификат клиента. "принять"
"игнорировать"
"требовать"
corsPolicy Политика CORS для приложения-контейнера CorsPolicy
customDomains Привязки личного домена для имен узлов контейнерных приложений. CustomDomain[]
exposedPort Предоставленный порт в контейнерах для tcp-трафика из входящего трафика int
внешний Bool, указывающий, предоставляет ли приложение внешнюю конечную точку HTTP bool
ipSecurityRestrictions Правила ограничения входящих IP-адресов. IpSecurityRestrictionRule[]
stickySessions Липкие сеансы для единого режима редакции IngressStickySessions
targetPort Целевой порт в контейнерах для трафика из входящего трафика int
targetPortHttpScheme Будет ли http-приложение прослушивать http или https "http"
Https
движение Вес трафика для редакций приложения по весу трафика[]
транспорт Протокол входящего трафика "Auto"
"http"
"http2"
Tcp

IngressPortMapping

Имя Описание Ценность
exposedPort Указывает предоставленный порт для целевого порта. Если он не указан, по умолчанию используется целевой порт. int
внешний Указывает, доступен ли порт приложения за пределами среды. bool (обязательно)
targetPort Указывает контейнер пользователя порта, который прослушивает int (обязательно)

IngressStickySessions

Имя Описание Ценность
сходство Сопоставление сеансов с привязкой "нет"
"Липкий"

InitContainer

Имя Описание Ценность
args Аргументы команд запуска контейнера. string[]
команда Команда запуска контейнера. string[]
env Переменные среды контейнера. EnvironmentVar[]
образ Тег образа контейнера. струна
тип изображения Тип изображения. Установите значение CloudBuild, чтобы система могла управлять изображением, где пользователь не сможет обновить образ с помощью поля изображения. Задайте значение ContainerImage для предоставленного пользователем образа. CloudBuild
ContainerImage
имя Имя настраиваемого контейнера. струна
ресурсы Требования к ресурсам контейнера. ContainerResources
volumeMounts Подключение тома контейнера. VolumeMount[]

IpSecurityRestrictionRule

Имя Описание Ценность
действие Разрешить или запретить правила для определения входящего IP-адреса. Примечание. Правила могут состоять только из ALL Allow или ALL Deny "Разрешить"
"Запрет" (обязательно)
описание Опишите правило ограничения IP-адресов, которое отправляется в приложение-контейнер. Это необязательное поле. струна
ipAddressRange Нотация CIDR для сопоставления входящих IP-адресов строка (обязательно)
имя Имя правила ограничения IP-адресов. строка (обязательно)

LoggerSetting

Имя Описание Ценность
уровень Уровень журнала указанного средства ведения журнала. "отладка"
"error"
"info"
"off"
'trace'
"предупреждение" (обязательно)
лесоруб Имя средства ведения журнала. строка (обязательно)

ManagedServiceIdentity

Имя Описание Ценность
тип Тип управляемого удостоверения службы (где разрешены типы SystemAssigned и UserAssigned). "Нет"
SystemAssigned
SystemAssigned, UserAssigned
UserAssigned (обязательно)
userAssignedIdentities Набор назначенных пользователем удостоверений, связанных с ресурсом. Ключи словаря userAssignedIdentities будут идентификаторами ресурсов ARM в форме: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Значения словаря могут быть пустыми объектами ({}) в запросах. UserAssignedIdentities

Microsoft.App/containerApps

Имя Описание Ценность
extendedLocation Сложный тип расширенного расположения. ExtendedLocation
тождество управляемые удостоверения для приложения-контейнера для взаимодействия с другими службами Azure без сохранения секретов или учетных данных в коде. ManagedServiceIdentity
добрый Метаданные, используемые для отображения различных возможностей для ресурсов одного типа; Например, WorkflowApp — это тип Microsoft.App/ContainerApps. При поддержке поставщик ресурсов должен проверить и сохранить это значение. "workflowapp"
местоположение Географическое расположение, в котором находится ресурс строка (обязательно)
managedBy Полный идентификатор ресурса ресурса, который управляет этим ресурсом. Указывает, управляется ли этот ресурс другим ресурсом Azure. В этом случае развертывание полного режима не удаляет ресурс, если он удаляется из шаблона, так как он управляется другим ресурсом. струна
имя Имя ресурса строка (обязательно)
свойства Свойства, относящиеся к ресурсу ContainerApp ContainerAppProperties
Теги Теги ресурсов Словарь имен и значений тегов.
тип Тип ресурса "Microsoft.App/containerApps@2024-10-02-preview"

QueueScaleRule

Имя Описание Ценность
accountName Имя учетной записи хранения. требуется, если для проверки подлинности используется управляемое удостоверение. струна
auth Секреты проверки подлинности для правила масштабирования очереди. ScaleRuleAuth[]
тождество Идентификатор ресурса управляемого удостоверения, назначаемого пользователем, который назначается приложению контейнера или системе для удостоверения, назначаемого системой. струна
queueLength Длина очереди. int
queueName Имя очереди. струна

RegistryCredentials

Имя Описание Ценность
тождество Управляемое удостоверение, используемое для проверки подлинности в реестре контейнеров Azure. Для удостоверений, назначенных пользователем, используйте полный идентификатор ресурса удостоверения, назначаемого пользователем. Для удостоверений, назначенных системой, используйте system струна
passwordSecretRef Имя секрета, содержащего пароль для входа в реестр струна
сервер Сервер реестра контейнеров струна
имя пользователя Имя пользователя реестра контейнеров струна

Режим выполнения

Имя Описание Ценность
dotnet Конфигурация приложения .NET runtimeDotnet
Ява Конфигурация приложения Java RuntimeJava

RuntimeDotnet

Имя Описание Ценность
autoConfigureDataProtection Автоматическая настройка функции защиты ASP.NET Core Data Protection bool

RuntimeJava

Имя Описание Ценность
enableMetrics Включение основных метрик jmx для приложения java bool
javaAgent Возможности диагностики, достигнутые агентом Java RuntimeJavaAgent

RuntimeJavaAgent

Имя Описание Ценность
Включен Включите внедрение агента java для приложения java. bool
лесозаготовка Возможности сценария ведения журнала java. RuntimeJavaAgentLogging

RuntimeJavaAgentLogging

Имя Описание Ценность
loggerSettings Параметры средства ведения журнала для приложения java. LoggerSetting[]

Шкала

Имя Описание Ценность
cooldownPeriod Необязательный. ПЕРИОД KEDA Cooldown. Значение по умолчанию — 300 секунд, если не задано. int
maxReplicas Необязательный. Максимальное количество реплик контейнеров. Значение по умолчанию — 10, если не задано. int
minReplicas Необязательный. Минимальное количество реплик контейнеров. int
pollingInterval Необязательный. Интервал опроса KEDA. Значение по умолчанию — 30 секунд, если не задано. int
Правила Правила масштабирования. ScaleRule[]

ScaleRule

Имя Описание Ценность
azureQueue Масштабирование на основе очереди Azure. QueueScaleRule
обычай Пользовательское правило масштабирования. CustomScaleRule
http Масштабирование на основе HTTP-запросов. HttpScaleRule
имя Имя правила масштабирования струна
протокол tcp Масштабирование на основе tcp-запросов. TcpScaleRule

ScaleRuleAuth

Имя Описание Ценность
secretRef Имя секрета, из которого необходимо извлечь парамс проверки подлинности. струна
triggerParameter Параметр триггера, использующий секрет струна

Секрет

Имя Описание Ценность
тождество Идентификатор ресурса управляемого удостоверения для проверки подлинности в Azure Key Vault или System для использования удостоверения, назначаемого системой. струна
keyVaultUrl URL-адрес Azure Key Vault, указывающий на секрет, на который ссылается приложение контейнера. струна
имя Имя секрета. струна
ценность Значение секрета. струна

Ограничения целостности:
Конфиденциальное значение. Передайте в качестве безопасного параметра.

SecretVolumeItem

Имя Описание Ценность
путь Путь к секрету проекта. Если путь не указан, путь по умолчанию имеет имя секрета, указанного в secretRef. струна
secretRef Имя секрета приложения-контейнера, из которого необходимо извлечь значение секрета. струна

Служба

Имя Описание Ценность
тип Тип службы Dev ContainerApp строка (обязательно)

ServiceBind

Имя Описание Ценность
clientType Тип клиента, который будет использоваться для подключения к службе струна
настраиваемые ключи Настраиваемые ключи для настройки внедренных значений в приложение ServiceBindCustomizedKeys
имя Имя привязки службы струна
serviceId Идентификатор ресурса целевой службы струна

ServiceBindCustomizedKeys

Имя Описание Ценность

TcpScaleRule

Имя Описание Ценность
auth Секреты проверки подлинности для правила масштабирования tcp. ScaleRuleAuth[]
тождество Идентификатор ресурса управляемого удостоверения, назначаемого пользователем, который назначается приложению контейнера или системе для удостоверения, назначаемого системой. струна
метаданные Свойства метаданных для описания правила масштабирования tcp. TcpScaleRuleMetadata

TcpScaleRuleMetadata

Имя Описание Ценность

Шаблон

Имя Описание Ценность
Контейнеры Список определений контейнеров для приложения-контейнера. контейнера[]
initContainers Список специализированных контейнеров, выполняемых перед контейнерами приложений. InitContainer[]
редакцияSuffix Понятный суффикс, добавляемый к имени редакции струна
шкала Масштабирование свойств для приложения-контейнера. масштаб
serviceBinds Список служб приложений-контейнеров, привязанных к приложению ServiceBind[]
terminationGracePeriodSeconds Необязательная длительность в секундах экземпляра приложения-контейнера должна завершиться корректно. Значение должно быть неотрицательно целым числом. Нулевое значение указывает, что немедленно останавливается через сигнал убийства (нет возможности завершить работу). Если это значение равно nil, вместо этого будет использоваться льготный период по умолчанию. Задайте это значение дольше ожидаемого времени очистки для процесса. Значение по умолчанию — 30 секунд. int
Объемы Список определений томов для приложения-контейнера. тома[]

TrackedResourceTags

Имя Описание Ценность

Вес трафика

Имя Описание Ценность
ярлык Связывает метку трафика с редакцией струна
latestRevision Указывает, что вес трафика принадлежит последней стабильной редакции bool
имя редакции Имя редакции струна
вес Вес трафика, назначенный редакции int

UserAssignedIdentities

Имя Описание Ценность

UserAssignedIdentity

Имя Описание Ценность

Том

Имя Описание Ценность
mountOptions Параметры подключения, используемые при подключении общей папки Azure или NFS Azure. Должен быть строкой, разделенной запятыми. струна
имя Имя тома. струна
Секреты Список секретов, добавляемых в том. Если секреты отсутствуют, все секреты в коллекции будут добавлены в том. SecretVolumeItem[]
storageName Имя ресурса хранилища. Не требуется предоставлять значение EmptyDir и Secret. струна
storageType Тип хранилища для тома. Если этот параметр не указан, используйте EmptyDir. AzureFile
'EmptyDir'
'NfsAzureFile'
"Секрет"
'Smb'

VolumeMount

Имя Описание Ценность
mountPath Путь в контейнере, в котором должен быть подключен том. Не должно содержать ":". струна
subPath Путь в томе, из которого должен быть подключен том контейнера. По умолчанию используется значение "" (корневой каталог тома). струна
имя тома Это должно соответствовать имени тома. струна