containerApps Microsoft.App
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>< |
'레이블' 'Multiple' 'Single' |
dapr | 컨테이너 앱에 대한 Dapr 구성입니다. | Dapr |
identitySettings | 컨테이너 앱에 할당된 관리 ID에 대한 선택적 설정입니다. 여기에 관리 ID를 지정하지 않으면 기본 설정이 사용됩니다. | IdentitySettings[] |
진입 | 수신 구성. | 수신 |
maxInactiveRevisions | 선택적. 컨테이너 앱에 사용할 수 있는 최대 비활성 수정 버전입니다. | int |
레지스트리 | 컨테이너 앱에서 사용하는 컨테이너에 대한 프라이빗 컨테이너 레지스트리 자격 증명 컬렉션 | RegistryCredentials[] |
revisionTransitionThreshold | 선택적. 수정 버전 전환이 발생하기 전에 발생해야 하는 총 복제본 수의 백분율입니다. 지정되지 않은 경우 기본값은 100입니다. 값은 0보다 크고 100보다 작거나 같아야 합니다. | int 제약 조건: 최소값 = 1 최대값 = 100 |
런타임 | 컨테이너 앱에 대한 앱 런타임 구성입니다. | 런타임 |
비밀 | 컨테이너 앱에서 사용하는 비밀 컬렉션 | 비밀[] |
서비스 | 개발 Container App Service가 될 컨테이너 앱 | 서비스 |
targetLabel | 레이블 수정 모드에 필요합니다. 새로 만든 수정 버전에 적용할 레이블입니다. | 문자열 |
컨테이너
이름 | 묘사 | 값 |
---|---|---|
인수(args) | 컨테이너 시작 명령 인수입니다. | string[] |
명령 | 컨테이너 시작 명령입니다. | string[] |
환경을 | 컨테이너 환경 변수입니다. | 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이면 Pod의 terminationGracePeriodSeconds가 사용됩니다. 그렇지 않으면 이 값은 Pod 사양에서 제공하는 값을 재정의합니다. 값은 음수가 아닌 정수여야 합니다. 값 0은 kill 신호를 통해 즉시 중지됨을 나타냅니다(종료할 기회가 없음). 알파 필드이며 ProbeTerminationGracePeriod 기능 게이트를 사용하도록 설정해야 합니다. 최대값은 3600초(1시간)입니다. | int |
timeoutSeconds | 프로브 시간이 초과된 후의 시간(초)입니다. 기본값은 1초입니다. 최소값은 1입니다. 최대값은 240입니다. | int |
형 | 프로브의 형식입니다. | '활기' '준비' 'Startup' |
ContainerAppProbeHttpGet
이름 | 묘사 | 값 |
---|---|---|
호스트 | 연결할 호스트 이름입니다. 기본적으로 Pod IP가 사용됩니다. 대신 httpHeaders에서 "호스트"를 설정하려고 할 것입니다. | 문자열 |
httpHeaders | 요청에 설정할 사용자 지정 헤더입니다. HTTP는 반복되는 헤더를 허용합니다. | ContainerAppProbeHttpGetHttpHeadersItem[] |
길 | HTTP 서버에서 액세스하는 경로입니다. | 문자열 |
항구 | 컨테이너에서 액세스할 포트의 이름 또는 번호입니다. 번호는 1에서 65535까지의 범위에 있어야 합니다. 이름은 IANA_SVC_NAME 합니다. | int(필수) |
음모 | 호스트에 연결하는 데 사용할 체계입니다. 기본값은 HTTP입니다. | 'HTTP' 'HTTPS' |
ContainerAppProbeHttpGetHttpHeadersItem
이름 | 묘사 | 값 |
---|---|---|
이름 | 헤더 필드 이름 | string(필수) |
값 | 헤더 필드 값 | string(필수) |
ContainerAppProbeTcpSocket
이름 | 묘사 | 값 |
---|---|---|
호스트 | 선택 사항: 연결할 호스트 이름, 기본값은 Pod IP입니다. | 문자열 |
항구 | 컨테이너에서 액세스할 포트의 번호 또는 이름입니다. 번호는 1에서 65535까지의 범위에 있어야 합니다. 이름은 IANA_SVC_NAME 합니다. | int(필수) |
ContainerAppProperties
이름 | 묘사 | 값 |
---|---|---|
구성 | 버전이 지정되지 않은 Container App 구성 속성입니다. | Configuration |
environmentId | 환경의 리소스 ID입니다. | 문자열 |
managedEnvironmentId | 되지 않는. 컨테이너 앱 환경의 리소스 ID입니다. | 문자열 |
patchingConfiguration | 컨테이너 앱 자동 패치 구성. | ContainerAppPropertiesPatchingConfiguration |
템플렛 | 컨테이너 앱 버전이 지정된 애플리케이션 정의입니다. | 템플릿 |
workloadProfileName | 컨테이너 앱 실행을 위해 고정할 워크로드 프로필 이름입니다. | 문자열 |
ContainerAppPropertiesPatchingConfiguration
이름 | 묘사 | 값 |
---|---|---|
patchingMode | 컨테이너 앱에 대한 패치 모드입니다. 이 필드의 Null 또는 기본값은 RP에 의해 자동으로 해석됩니다. 자동 모드는 사용 가능한 패치를 자동으로 적용합니다. 수동 모드에서는 사용자가 패치를 수동으로 적용해야 합니다. 비활성화된 모드는 패치 검색 및 자동 패치를 중지합니다. | 'Automatic' '사용 안 함' '수동' |
ContainerResources
이름 | 묘사 | 값 |
---|---|---|
cpu(cpu) | 코어의 필수 CPU(예: 0.5) | int |
gpu | GPU 기반 앱의 코어에 필요한 GPU(예: 1.0) | int |
기억 | 필요한 메모리(예: "250Mb") | 문자열 |
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 | 사용자 지정 도메인 바인딩 형식입니다. | 'Auto' '사용 안 함' 'SniEnabled' |
certificateId | 이 호스트 이름에 바인딩할 인증서의 리소스 ID입니다. 관리되는 환경에 있어야 합니다. | 문자열 |
이름 | 호스트 이름입니다. | string(필수) |
CustomScaleRule
이름 | 묘사 | 값 |
---|---|---|
인증 | 사용자 지정 크기 조정 규칙에 대한 인증 비밀입니다. | ScaleRuleAuth[] |
신원 | 컨테이너 앱에 할당된 사용자 할당 관리 ID의 리소스 ID이거나 시스템 할당 ID에 대한 '시스템'입니다. | 문자열 |
메타데이터 | 사용자 지정 크기 조정 규칙을 설명하는 메타데이터 속성입니다. | CustomScaleRuleMetadata |
형 | 사용자 지정 배율 규칙의 형식 예: azure-servicebus, redis 등 |
문자열 |
CustomScaleRuleMetadata
이름 | 묘사 | 값 |
---|
다프(Dapr)
이름 | 묘사 | 값 |
---|---|---|
appId | Dapr 애플리케이션 식별자 | 문자열 |
appPort | 애플리케이션이 수신 대기 중인 포트를 Dapr에 알릴 수 있습니다. | int |
appProtocol | 애플리케이션에서 사용 중인 프로토콜을 Dapr에 알릴 수 있습니다. 유효한 옵션은 http 및 grpc입니다. 기본값은 http입니다. | 'grpc' 'http' |
enableApiLogging | Dapr 사이드카에 대한 API 로깅 사용 | bool |
사용 | Dapr 사이드카를 사용할 수 있는지 여부를 나타내는 부울 | bool |
httpMaxRequestSize | 큰 파일 업로드를 처리하기 위해 요청 본문 http 및 grpc 서버 매개 변수의 최대 크기를 MB로 늘입니다. 기본값은 4MB입니다. | int |
httpReadBufferSize | 다중 KB 헤더를 보낼 때 처리할 HTTP 헤더 읽기 버퍼의 Dapr 최대 크기입니다. 기본값은 65KB입니다. | int |
logLevel | Dapr 사이드카의 로그 수준을 설정합니다. 허용되는 값은 디버그, 정보, 경고, 오류입니다. 기본값은 정보입니다. | 'debug' 'error' 'info' '경고' |
EnvironmentVar
이름 | 묘사 | 값 |
---|---|---|
이름 | 환경 변수 이름입니다. | 문자열 |
secretRef | 환경 변수 값을 끌어올 컨테이너 앱 비밀의 이름입니다. | 문자열 |
값 | 비밀이 아닌 환경 변수 값입니다. | 문자열 |
ExtendedLocation
이름 | 묘사 | 값 |
---|---|---|
이름 | 확장된 위치의 이름입니다. | 문자열 |
형 | 확장된 위치의 형식입니다. | 'CustomLocation' |
HttpScaleRule
이름 | 묘사 | 값 |
---|---|---|
인증 | 사용자 지정 크기 조정 규칙에 대한 인증 비밀입니다. | ScaleRuleAuth[] |
신원 | 컨테이너 앱에 할당된 사용자 할당 관리 ID의 리소스 ID이거나 시스템 할당 ID에 대한 '시스템'입니다. | 문자열 |
메타데이터 | http 크기 조정 규칙을 설명하는 메타데이터 속성입니다. | httpScaleRuleMetadata |
HttpScaleRuleMetadata
이름 | 묘사 | 값 |
---|
IdentitySettings
이름 | 묘사 | 값 |
---|---|---|
신원 | 컨테이너 앱에 할당된 사용자 할당 관리 ID의 리소스 ID이거나 시스템 할당 ID에 대한 '시스템'입니다. | string(필수) |
수명 주기 | 관리 ID를 사용할 수 있어야 하는 컨테이너 앱의 수명 주기 단계를 선택하는 데 사용합니다. | 'All' 'Init' 'Main' 'None' |
진입
이름 | 묘사 | 값 |
---|---|---|
additionalPortMappings | 컨테이너 앱에 추가 포트를 노출하는 설정 | IngressPortMapping[] |
allowInsecure | HTTP 연결이 허용되는지 여부를 나타내는 부울입니다. false HTTP 연결로 설정된 경우 HTTPS 연결로 자동으로 리디렉션됩니다. | bool |
clientCertificateMode | mTLS 인증을 위한 클라이언트 인증서 모드입니다. 무시는 서버가 전달에 클라이언트 인증서를 삭제함을 나타냅니다. 수락은 서버가 클라이언트 인증서를 전달하지만 클라이언트 인증서가 필요하지 않음을 나타냅니다. 서버에서 클라이언트 인증서가 필요했음을 나타냅니다. | '수락' 'ignore' 'require' |
corsPolicy | 컨테이너 앱에 대한 CORS 정책 | CorsPolicy |
customDomains | Container Apps 호스트 이름에 대한 사용자 지정 도메인 바인딩입니다. | customDomain |
exposedPort | 수신에서 TCP 트래픽에 대한 컨테이너의 노출된 포트 | int |
외부 | 앱이 외부 http 엔드포인트를 노출하는지 여부를 나타내는 Bool | bool |
ipSecurityRestrictions | 들어오는 IP 주소를 제한하는 규칙입니다. | ipSecurityRestrictionRule |
stickySessions | 단일 수정 모드에 대한 고정 세션 | IngressStickySessions |
targetPort | 수신 트래픽에 대한 컨테이너의 대상 포트 | int |
targetPortHttpScheme | http 앱이 http 또는 https에서 수신 대기하는지 여부 | 'http' 'https' |
교통 | 앱의 수정 버전에 대한 트래픽 가중치 | TrafficWeight[] |
수송 | 수신 전송 프로토콜 | 'auto' 'http' 'http2' 'tcp' |
IngressPortMapping
이름 | 묘사 | 값 |
---|---|---|
exposedPort | 대상 포트에 대해 노출된 포트를 지정합니다. 지정하지 않으면 기본적으로 대상 포트로 설정됩니다. | int |
외부 | 환경 외부에서 앱 포트에 액세스할 수 있는지 여부를 지정합니다. | bool(필수) |
targetPort | 포트 사용자의 컨테이너 수신 대기를 지정합니다. | int(필수) |
IngressStickySessions
이름 | 묘사 | 값 |
---|---|---|
선호도 | 고정 세션 선호도 | 'none' '끈적끈적한' |
InitContainer
이름 | 묘사 | 값 |
---|---|---|
인수(args) | 컨테이너 시작 명령 인수입니다. | string[] |
명령 | 컨테이너 시작 명령입니다. | string[] |
환경을 | 컨테이너 환경 변수입니다. | EnvironmentVar[] |
이미지 | 컨테이너 이미지 태그입니다. | 문자열 |
이미지 유형 | 이미지의 형식입니다. 시스템에서 이미지를 관리할 수 있도록 CloudBuild로 설정합니다. 여기서 사용자는 이미지 필드를 통해 이미지를 업데이트할 수 없습니다. 사용자가 제공한 이미지에 대해 ContainerImage로 설정합니다. | 'CloudBuild' 'ContainerImage' |
이름 | 사용자 지정 컨테이너 이름입니다. | 문자열 |
리소스 | 컨테이너 리소스 요구 사항. | containerResources |
volumeMounts | 컨테이너 볼륨 탑재. | VolumeMount[] |
IpSecurityRestrictionRule
이름 | 묘사 | 값 |
---|---|---|
행동 | 들어오는 IP를 결정하는 규칙을 허용하거나 거부합니다. 참고: 규칙은 ALL 허용 또는 모든 거부로만 구성됩니다. | '허용' 'Deny'(필수) |
묘사 | 컨테이너 앱으로 전송되는 IP 제한 규칙을 설명합니다. 선택적 필드입니다. | 문자열 |
ipAddressRange | 들어오는 IP 주소와 일치하는 CIDR 표기법 | string(필수) |
이름 | IP 제한 규칙의 이름입니다. | string(필수) |
LoggerSetting
이름 | 묘사 | 값 |
---|---|---|
수준 | 지정된 로거의 로그 수준입니다. | 'debug' 'error' 'info' 'off' 'trace' 'warn'(필수) |
거 | 로거 이름입니다. | string(필수) |
ManagedServiceIdentity
이름 | 묘사 | 값 |
---|---|---|
형 | 관리 서비스 ID의 유형입니다(SystemAssigned 및 UserAssigned 형식이 모두 허용되는 경우). | 'None' 'SystemAssigned' 'SystemAssigned,UserAssigned' 'UserAssigned'(필수) |
userAssignedIdentities | 리소스와 연결된 사용자 할당 ID 집합입니다. userAssignedIdentities 사전 키는 '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName} 형식의 ARM 리소스 ID입니다. 사전 값은 요청에서 빈 개체({})일 수 있습니다. | UserAssignedIdentities |
Microsoft.App/containerApps
이름 | 묘사 | 값 |
---|---|---|
extendedLocation | 확장된 위치의 복합 형식입니다. | ExtendedLocation |
신원 | 코드에서 비밀 또는 자격 증명을 유지 관리하지 않고 컨테이너 앱이 다른 Azure 서비스와 상호 작용할 수 있도록 관리 ID입니다. | ManagedServiceIdentity |
종류 | 동일한 형식의 리소스에 대해 다른 환경을 렌더링하는 데 사용되는 메타데이터입니다. 예를 들어 WorkflowApp은 일종의 Microsoft.App/ContainerApps 형식입니다. 지원되는 경우 리소스 공급자는 이 값의 유효성을 검사하고 유지해야 합니다. | 'workflowapp' |
위치 | 리소스가 있는 지리적 위치 | string(필수) |
managedBy | 이 리소스를 관리하는 리소스의 정규화된 리소스 ID입니다. 이 리소스가 다른 Azure 리소스에서 관리되는지를 나타냅니다. 이 경우 전체 모드 배포는 다른 리소스에서 관리되므로 템플릿에서 제거된 경우 리소스를 삭제하지 않습니다. | 문자열 |
이름 | 리소스 이름 | string(필수) |
속성 | ContainerApp 리소스 관련 속성 | ContainerAppProperties |
태그 | 리소스 태그 | 태그 이름 및 값의 사전입니다. 템플릿 |
QueueScaleRule
이름 | 묘사 | 값 |
---|---|---|
accountName | 스토리지 계정 이름입니다. 관리 ID를 사용하여 인증하는 경우 필수 | 문자열 |
인증 | 큐 크기 조정 규칙에 대한 인증 비밀입니다. | ScaleRuleAuth[] |
신원 | 컨테이너 앱에 할당된 사용자 할당 관리 ID의 리소스 ID이거나 시스템 할당 ID에 대한 '시스템'입니다. | 문자열 |
queueLength | 큐 길이입니다. | int |
queueName | 큐 이름입니다. | 문자열 |
RegistryCredentials
이름 | 묘사 | 값 |
---|---|---|
신원 | Azure Container Registry로 인증하는 데 사용할 관리 ID입니다. 사용자 할당 ID의 경우 전체 사용자 할당 ID 리소스 ID를 사용합니다. 시스템 할당 ID의 경우 'system'을 사용합니다. | 문자열 |
passwordSecretRef | 레지스트리 로그인 암호를 포함하는 비밀의 이름입니다. | 문자열 |
서버 | Container Registry Server | 문자열 |
사용자 이름 | Container Registry 사용자 이름 | 문자열 |
런타임
이름 | 묘사 | 값 |
---|---|---|
dotnet | .NET 앱 구성 | RuntimeDotnet |
자바 | Java 앱 구성 | RuntimeJava |
RuntimeDotnet
이름 | 묘사 | 값 |
---|---|---|
autoConfigureDataProtection | ASP.NET Core Data Protection 기능 자동 구성 | bool |
RuntimeJava
이름 | 묘사 | 값 |
---|---|---|
enableMetrics | Java 앱에 jmx 핵심 메트릭 사용 | bool |
javaAgent | Java 에이전트에서 달성한 진단 기능 | RuntimeJavaAgent |
RuntimeJavaAgent
이름 | 묘사 | 값 |
---|---|---|
사용 | Java 앱에 대해 Java 에이전트 삽입을 사용하도록 설정합니다. | bool |
로깅 | Java 로깅 시나리오의 기능입니다. | runtimeJavaAgentLogging |
RuntimeJavaAgentLogging
이름 | 묘사 | 값 |
---|---|---|
loggerSettings | Java 앱에 대한 로거 설정입니다. | LoggerSetting[] |
저울
이름 | 묘사 | 값 |
---|---|---|
cooldownPeriod | 선택적. KEDA 쿨다운 기간. 설정하지 않으면 기본값은 300초입니다. | int |
maxReplicas | 선택적. 컨테이너 복제본의 최대 수입니다. 설정되지 않은 경우 기본값은 10입니다. | int |
minReplicas | 선택적. 컨테이너 복제본의 최소 수입니다. | int |
pollingInterval | 선택적. KEDA 폴링 간격입니다. 설정되지 않은 경우 기본값은 30초입니다. | int |
규칙 | 규칙 크기 조정 | ScaleRule[] |
ScaleRule
이름 | 묘사 | 값 |
---|---|---|
azureQueue | Azure 큐 기반 크기 조정. | QueueScaleRule |
관습 | 사용자 지정 크기 조정 규칙입니다. | CustomScaleRule |
http(http) | HTTP 요청 기반 크기 조정 | httpScaleRule |
이름 | 크기 조정 규칙 이름 | 문자열 |
tcp | Tcp 요청 기반 크기 조정 | TcpScaleRule |
ScaleRuleAuth
이름 | 묘사 | 값 |
---|---|---|
secretRef | 인증 매개 변수를 끌어올 비밀의 이름입니다. | 문자열 |
triggerParameter | 비밀을 사용하는 트리거 매개 변수 | 문자열 |
비밀
이름 | 묘사 | 값 |
---|---|---|
신원 | Azure Key Vault로 인증할 관리 ID의 리소스 ID 또는 시스템 할당 ID를 사용하는 시스템입니다. | 문자열 |
keyVaultUrl | 컨테이너 앱에서 참조하는 비밀을 가리키는 Azure Key Vault URL입니다. | 문자열 |
이름 | 비밀 이름입니다. | 문자열 |
값 | 비밀 값입니다. | 문자열 제약 조건: 중요한 값입니다. 보안 매개 변수로 전달합니다. |
SecretVolumeItem
이름 | 묘사 | 값 |
---|---|---|
길 | 프로젝트 비밀에 대한 경로입니다. 경로가 제공되지 않은 경우 경로는 기본적으로 secretRef에 나열된 비밀의 이름으로 설정됩니다. | 문자열 |
secretRef | 비밀 값을 끌어올 컨테이너 앱 비밀의 이름입니다. | 문자열 |
서비스
이름 | 묘사 | 값 |
---|---|---|
형 | Dev ContainerApp 서비스 유형 | string(필수) |
ServiceBind
이름 | 묘사 | 값 |
---|---|---|
clientType | 서비스에 연결하는 데 사용할 클라이언트 유형 | 문자열 |
customizedKeys | 앱에 삽입된 값을 사용자 지정하기 위한 사용자 지정된 키 | ServiceBindCustomizedKeys |
이름 | 서비스 바인딩의 이름 | 문자열 |
serviceId | 대상 서비스의 리소스 ID | 문자열 |
ServiceBindCustomizedKeys
이름 | 묘사 | 값 |
---|
TcpScaleRule
이름 | 묘사 | 값 |
---|---|---|
인증 | tcp 크기 조정 규칙에 대한 인증 비밀입니다. | ScaleRuleAuth[] |
신원 | 컨테이너 앱에 할당된 사용자 할당 관리 ID의 리소스 ID이거나 시스템 할당 ID에 대한 '시스템'입니다. | 문자열 |
메타데이터 | tcp 크기 조정 규칙을 설명하는 메타데이터 속성입니다. | TcpScaleRuleMetadata |
TcpScaleRuleMetadata
이름 | 묘사 | 값 |
---|
템플렛
이름 | 묘사 | 값 |
---|---|---|
컨테이너 | 컨테이너 앱에 대한 컨테이너 정의 목록입니다. | 컨테이너[] |
initContainers | 앱 컨테이너 앞에서 실행되는 특수 컨테이너 목록입니다. | InitContainer[] |
revisionSuffix | 수정 이름에 추가된 사용자에게 친숙한 접미사 | 문자열 |
저울 | 컨테이너 앱의 크기 조정 속성입니다. | 크기 조정 |
serviceBinds | 앱에 바인딩된 컨테이너 앱 서비스 목록 | ServiceBind[] |
terminationGracePeriodSeconds | 컨테이너 앱 인스턴스가 정상적으로 종료되어야 하는 시간(초)입니다. 값은 음수가 아닌 정수여야 합니다. 값 0은 kill 신호를 통해 즉시 중지됨을 나타냅니다(종료할 기회가 없음). 이 값이 nil이면 기본 유예 기간이 대신 사용됩니다. 이 값을 프로세스의 예상 정리 시간보다 길게 설정합니다. 기본값은 30초입니다. | int |
볼륨 | 컨테이너 앱에 대한 볼륨 정의 목록입니다. | 볼륨[] |
TrackedResourceTags
이름 | 묘사 | 값 |
---|
TrafficWeight
이름 | 묘사 | 값 |
---|---|---|
레이블 | 트래픽 레이블을 수정 버전과 연결 | 문자열 |
latestRevision | 트래픽 가중치가 안정적인 최신 수정 버전에 속한다는 것을 나타냅니다. | bool |
revisionName | 수정 버전 이름 | 문자열 |
무게 | 수정 버전에 할당된 트래픽 가중치 | int |
UserAssignedIdentities
이름 | 묘사 | 값 |
---|
UserAssignedIdentity
이름 | 묘사 | 값 |
---|
음량
이름 | 묘사 | 값 |
---|---|---|
mountOptions | Azure 파일 공유 또는 NFS Azure 파일 공유를 탑재하는 동안 사용되는 탑재 옵션입니다. 쉼표로 구분된 문자열이어야 합니다. | 문자열 |
이름 | 볼륨 이름입니다. | 문자열 |
비밀 | 볼륨에 추가할 비밀 목록입니다. 비밀이 제공되지 않으면 컬렉션의 모든 비밀이 볼륨에 추가됩니다. | SecretVolumeItem[] |
storageName | 스토리지 리소스의 이름입니다. EmptyDir 및 Secret을 제공할 필요가 없습니다. | 문자열 |
storageType | 볼륨의 스토리지 유형입니다. 제공되지 않은 경우 EmptyDir을 사용합니다. | 'AzureFile' 'EmptyDir' 'NfsAzureFile' '비밀' 'Smb' |
VolumeMount
이름 | 묘사 | 값 |
---|---|---|
mountPath | 볼륨을 탑재해야 하는 컨테이너 내의 경로입니다. ':'을 포함하지 않아야 합니다. | 문자열 |
subPath | 컨테이너 볼륨을 탑재해야 하는 볼륨 내의 경로입니다. 기본값은 ""(볼륨의 루트)입니다. | 문자열 |
volumeName | 볼륨의 이름과 일치해야 합니다. | 문자열 |
빠른 시작 샘플
다음 빠른 시작 샘플은 이 리소스 유형을 배포합니다.
Bicep 파일 | 묘사 |
---|---|
레지스트리 사용하여 컨테이너 앱 및 환경을 만듭니다. | Azure Container Registry에서 기본 컨테이너 앱을 사용하여 컨테이너 앱 환경을 만듭니다. 또한 Log Analytics 작업 영역을 배포하여 로그를 저장합니다. |
정의된 HTTP 크기 조정 규칙 사용하여 컨테이너 앱을 만듭니다. | HTTP 트래픽에 따라 크기가 조정되는 기본 컨테이너 앱을 사용하여 컨테이너 앱 환경을 만듭니다. |
컨테이너 앱 환경 내에 컨테이너 앱을 만듭니다. | 기본 컨테이너 앱을 사용하여 컨테이너 앱 환경을 만듭니다. 또한 Log Analytics 작업 영역을 배포하여 로그를 저장합니다. |
Container Apps 사용하여 Dapr 마이크로 서비스 앱을 만듭니다. | Container Apps를 사용하여 Dapr 마이크로 서비스 앱을 만듭니다. |
Container Apps 사용하여 Dapr pub-sub servicebus 앱을 만듭니다. | Container Apps를 사용하여 Dapr pub-sub servicebus 앱을 만듭니다. |
컨테이너 앱 환경 사용하여 두 개의 컨테이너 앱을 만듭니다. | 기본 컨테이너 앱을 사용하여 두 개의 컨테이너 앱 환경을 만듭니다. 또한 Log Analytics 작업 영역을 배포하여 로그를 저장합니다. |
VNET 사용하여 외부 컨테이너 앱 환경을 만듭니다. | VNET을 사용하여 외부 컨테이너 앱 환경을 만듭니다. |
VNET 사용하여 내부 컨테이너 앱 환경을 만듭니다. | VNET을 사용하여 내부 컨테이너 앱 환경을 만듭니다. |
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>< |
'레이블' 'Multiple' 'Single' |
dapr | 컨테이너 앱에 대한 Dapr 구성입니다. | Dapr |
identitySettings | 컨테이너 앱에 할당된 관리 ID에 대한 선택적 설정입니다. 여기에 관리 ID를 지정하지 않으면 기본 설정이 사용됩니다. | IdentitySettings[] |
진입 | 수신 구성. | 수신 |
maxInactiveRevisions | 선택적. 컨테이너 앱에 사용할 수 있는 최대 비활성 수정 버전입니다. | int |
레지스트리 | 컨테이너 앱에서 사용하는 컨테이너에 대한 프라이빗 컨테이너 레지스트리 자격 증명 컬렉션 | RegistryCredentials[] |
revisionTransitionThreshold | 선택적. 수정 버전 전환이 발생하기 전에 발생해야 하는 총 복제본 수의 백분율입니다. 지정되지 않은 경우 기본값은 100입니다. 값은 0보다 크고 100보다 작거나 같아야 합니다. | int 제약 조건: 최소값 = 1 최대값 = 100 |
런타임 | 컨테이너 앱에 대한 앱 런타임 구성입니다. | 런타임 |
비밀 | 컨테이너 앱에서 사용하는 비밀 컬렉션 | 비밀[] |
서비스 | 개발 Container App Service가 될 컨테이너 앱 | 서비스 |
targetLabel | 레이블 수정 모드에 필요합니다. 새로 만든 수정 버전에 적용할 레이블입니다. | 문자열 |
컨테이너
이름 | 묘사 | 값 |
---|---|---|
인수(args) | 컨테이너 시작 명령 인수입니다. | string[] |
명령 | 컨테이너 시작 명령입니다. | string[] |
환경을 | 컨테이너 환경 변수입니다. | 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이면 Pod의 terminationGracePeriodSeconds가 사용됩니다. 그렇지 않으면 이 값은 Pod 사양에서 제공하는 값을 재정의합니다. 값은 음수가 아닌 정수여야 합니다. 값 0은 kill 신호를 통해 즉시 중지됨을 나타냅니다(종료할 기회가 없음). 알파 필드이며 ProbeTerminationGracePeriod 기능 게이트를 사용하도록 설정해야 합니다. 최대값은 3600초(1시간)입니다. | int |
timeoutSeconds | 프로브 시간이 초과된 후의 시간(초)입니다. 기본값은 1초입니다. 최소값은 1입니다. 최대값은 240입니다. | int |
형 | 프로브의 형식입니다. | '활기' '준비' 'Startup' |
ContainerAppProbeHttpGet
이름 | 묘사 | 값 |
---|---|---|
호스트 | 연결할 호스트 이름입니다. 기본적으로 Pod IP가 사용됩니다. 대신 httpHeaders에서 "호스트"를 설정하려고 할 것입니다. | 문자열 |
httpHeaders | 요청에 설정할 사용자 지정 헤더입니다. HTTP는 반복되는 헤더를 허용합니다. | ContainerAppProbeHttpGetHttpHeadersItem[] |
길 | HTTP 서버에서 액세스하는 경로입니다. | 문자열 |
항구 | 컨테이너에서 액세스할 포트의 이름 또는 번호입니다. 번호는 1에서 65535까지의 범위에 있어야 합니다. 이름은 IANA_SVC_NAME 합니다. | int(필수) |
음모 | 호스트에 연결하는 데 사용할 체계입니다. 기본값은 HTTP입니다. | 'HTTP' 'HTTPS' |
ContainerAppProbeHttpGetHttpHeadersItem
이름 | 묘사 | 값 |
---|---|---|
이름 | 헤더 필드 이름 | string(필수) |
값 | 헤더 필드 값 | string(필수) |
ContainerAppProbeTcpSocket
이름 | 묘사 | 값 |
---|---|---|
호스트 | 선택 사항: 연결할 호스트 이름, 기본값은 Pod IP입니다. | 문자열 |
항구 | 컨테이너에서 액세스할 포트의 번호 또는 이름입니다. 번호는 1에서 65535까지의 범위에 있어야 합니다. 이름은 IANA_SVC_NAME 합니다. | int(필수) |
ContainerAppProperties
이름 | 묘사 | 값 |
---|---|---|
구성 | 버전이 지정되지 않은 Container App 구성 속성입니다. | Configuration |
environmentId | 환경의 리소스 ID입니다. | 문자열 |
managedEnvironmentId | 되지 않는. 컨테이너 앱 환경의 리소스 ID입니다. | 문자열 |
patchingConfiguration | 컨테이너 앱 자동 패치 구성. | ContainerAppPropertiesPatchingConfiguration |
템플렛 | 컨테이너 앱 버전이 지정된 애플리케이션 정의입니다. | 템플릿 |
workloadProfileName | 컨테이너 앱 실행을 위해 고정할 워크로드 프로필 이름입니다. | 문자열 |
ContainerAppPropertiesPatchingConfiguration
이름 | 묘사 | 값 |
---|---|---|
patchingMode | 컨테이너 앱에 대한 패치 모드입니다. 이 필드의 Null 또는 기본값은 RP에 의해 자동으로 해석됩니다. 자동 모드는 사용 가능한 패치를 자동으로 적용합니다. 수동 모드에서는 사용자가 패치를 수동으로 적용해야 합니다. 비활성화된 모드는 패치 검색 및 자동 패치를 중지합니다. | 'Automatic' '사용 안 함' '수동' |
ContainerResources
이름 | 묘사 | 값 |
---|---|---|
cpu(cpu) | 코어의 필수 CPU(예: 0.5) | int |
gpu | GPU 기반 앱의 코어에 필요한 GPU(예: 1.0) | int |
기억 | 필요한 메모리(예: "250Mb") | 문자열 |
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 | 사용자 지정 도메인 바인딩 형식입니다. | 'Auto' '사용 안 함' 'SniEnabled' |
certificateId | 이 호스트 이름에 바인딩할 인증서의 리소스 ID입니다. 관리되는 환경에 있어야 합니다. | 문자열 |
이름 | 호스트 이름입니다. | string(필수) |
CustomScaleRule
이름 | 묘사 | 값 |
---|---|---|
인증 | 사용자 지정 크기 조정 규칙에 대한 인증 비밀입니다. | ScaleRuleAuth[] |
신원 | 컨테이너 앱에 할당된 사용자 할당 관리 ID의 리소스 ID이거나 시스템 할당 ID에 대한 '시스템'입니다. | 문자열 |
메타데이터 | 사용자 지정 크기 조정 규칙을 설명하는 메타데이터 속성입니다. | CustomScaleRuleMetadata |
형 | 사용자 지정 배율 규칙의 형식 예: azure-servicebus, redis 등 |
문자열 |
CustomScaleRuleMetadata
이름 | 묘사 | 값 |
---|
다프(Dapr)
이름 | 묘사 | 값 |
---|---|---|
appId | Dapr 애플리케이션 식별자 | 문자열 |
appPort | 애플리케이션이 수신 대기 중인 포트를 Dapr에 알릴 수 있습니다. | int |
appProtocol | 애플리케이션에서 사용 중인 프로토콜을 Dapr에 알릴 수 있습니다. 유효한 옵션은 http 및 grpc입니다. 기본값은 http입니다. | 'grpc' 'http' |
enableApiLogging | Dapr 사이드카에 대한 API 로깅 사용 | bool |
사용 | Dapr 사이드카를 사용할 수 있는지 여부를 나타내는 부울 | bool |
httpMaxRequestSize | 큰 파일 업로드를 처리하기 위해 요청 본문 http 및 grpc 서버 매개 변수의 최대 크기를 MB로 늘입니다. 기본값은 4MB입니다. | int |
httpReadBufferSize | 다중 KB 헤더를 보낼 때 처리할 HTTP 헤더 읽기 버퍼의 Dapr 최대 크기입니다. 기본값은 65KB입니다. | int |
logLevel | Dapr 사이드카의 로그 수준을 설정합니다. 허용되는 값은 디버그, 정보, 경고, 오류입니다. 기본값은 정보입니다. | 'debug' 'error' 'info' '경고' |
EnvironmentVar
이름 | 묘사 | 값 |
---|---|---|
이름 | 환경 변수 이름입니다. | 문자열 |
secretRef | 환경 변수 값을 끌어올 컨테이너 앱 비밀의 이름입니다. | 문자열 |
값 | 비밀이 아닌 환경 변수 값입니다. | 문자열 |
ExtendedLocation
이름 | 묘사 | 값 |
---|---|---|
이름 | 확장된 위치의 이름입니다. | 문자열 |
형 | 확장된 위치의 형식입니다. | 'CustomLocation' |
HttpScaleRule
이름 | 묘사 | 값 |
---|---|---|
인증 | 사용자 지정 크기 조정 규칙에 대한 인증 비밀입니다. | ScaleRuleAuth[] |
신원 | 컨테이너 앱에 할당된 사용자 할당 관리 ID의 리소스 ID이거나 시스템 할당 ID에 대한 '시스템'입니다. | 문자열 |
메타데이터 | http 크기 조정 규칙을 설명하는 메타데이터 속성입니다. | httpScaleRuleMetadata |
HttpScaleRuleMetadata
이름 | 묘사 | 값 |
---|
IdentitySettings
이름 | 묘사 | 값 |
---|---|---|
신원 | 컨테이너 앱에 할당된 사용자 할당 관리 ID의 리소스 ID이거나 시스템 할당 ID에 대한 '시스템'입니다. | string(필수) |
수명 주기 | 관리 ID를 사용할 수 있어야 하는 컨테이너 앱의 수명 주기 단계를 선택하는 데 사용합니다. | 'All' 'Init' 'Main' 'None' |
진입
이름 | 묘사 | 값 |
---|---|---|
additionalPortMappings | 컨테이너 앱에 추가 포트를 노출하는 설정 | IngressPortMapping[] |
allowInsecure | HTTP 연결이 허용되는지 여부를 나타내는 부울입니다. false HTTP 연결로 설정된 경우 HTTPS 연결로 자동으로 리디렉션됩니다. | bool |
clientCertificateMode | mTLS 인증을 위한 클라이언트 인증서 모드입니다. 무시는 서버가 전달에 클라이언트 인증서를 삭제함을 나타냅니다. 수락은 서버가 클라이언트 인증서를 전달하지만 클라이언트 인증서가 필요하지 않음을 나타냅니다. 서버에서 클라이언트 인증서가 필요했음을 나타냅니다. | '수락' 'ignore' 'require' |
corsPolicy | 컨테이너 앱에 대한 CORS 정책 | CorsPolicy |
customDomains | Container Apps 호스트 이름에 대한 사용자 지정 도메인 바인딩입니다. | customDomain |
exposedPort | 수신에서 TCP 트래픽에 대한 컨테이너의 노출된 포트 | int |
외부 | 앱이 외부 http 엔드포인트를 노출하는지 여부를 나타내는 Bool | bool |
ipSecurityRestrictions | 들어오는 IP 주소를 제한하는 규칙입니다. | ipSecurityRestrictionRule |
stickySessions | 단일 수정 모드에 대한 고정 세션 | IngressStickySessions |
targetPort | 수신 트래픽에 대한 컨테이너의 대상 포트 | int |
targetPortHttpScheme | http 앱이 http 또는 https에서 수신 대기하는지 여부 | 'http' 'https' |
교통 | 앱의 수정 버전에 대한 트래픽 가중치 | TrafficWeight[] |
수송 | 수신 전송 프로토콜 | 'auto' 'http' 'http2' 'tcp' |
IngressPortMapping
이름 | 묘사 | 값 |
---|---|---|
exposedPort | 대상 포트에 대해 노출된 포트를 지정합니다. 지정하지 않으면 기본적으로 대상 포트로 설정됩니다. | int |
외부 | 환경 외부에서 앱 포트에 액세스할 수 있는지 여부를 지정합니다. | bool(필수) |
targetPort | 포트 사용자의 컨테이너 수신 대기를 지정합니다. | int(필수) |
IngressStickySessions
이름 | 묘사 | 값 |
---|---|---|
선호도 | 고정 세션 선호도 | 'none' '끈적끈적한' |
InitContainer
이름 | 묘사 | 값 |
---|---|---|
인수(args) | 컨테이너 시작 명령 인수입니다. | string[] |
명령 | 컨테이너 시작 명령입니다. | string[] |
환경을 | 컨테이너 환경 변수입니다. | EnvironmentVar[] |
이미지 | 컨테이너 이미지 태그입니다. | 문자열 |
이미지 유형 | 이미지의 형식입니다. 시스템에서 이미지를 관리할 수 있도록 CloudBuild로 설정합니다. 여기서 사용자는 이미지 필드를 통해 이미지를 업데이트할 수 없습니다. 사용자가 제공한 이미지에 대해 ContainerImage로 설정합니다. | 'CloudBuild' 'ContainerImage' |
이름 | 사용자 지정 컨테이너 이름입니다. | 문자열 |
리소스 | 컨테이너 리소스 요구 사항. | containerResources |
volumeMounts | 컨테이너 볼륨 탑재. | VolumeMount[] |
IpSecurityRestrictionRule
이름 | 묘사 | 값 |
---|---|---|
행동 | 들어오는 IP를 결정하는 규칙을 허용하거나 거부합니다. 참고: 규칙은 ALL 허용 또는 모든 거부로만 구성됩니다. | '허용' 'Deny'(필수) |
묘사 | 컨테이너 앱으로 전송되는 IP 제한 규칙을 설명합니다. 선택적 필드입니다. | 문자열 |
ipAddressRange | 들어오는 IP 주소와 일치하는 CIDR 표기법 | string(필수) |
이름 | IP 제한 규칙의 이름입니다. | string(필수) |
LoggerSetting
이름 | 묘사 | 값 |
---|---|---|
수준 | 지정된 로거의 로그 수준입니다. | 'debug' 'error' 'info' 'off' 'trace' 'warn'(필수) |
거 | 로거 이름입니다. | string(필수) |
ManagedServiceIdentity
이름 | 묘사 | 값 |
---|---|---|
형 | 관리 서비스 ID의 유형입니다(SystemAssigned 및 UserAssigned 형식이 모두 허용되는 경우). | 'None' 'SystemAssigned' 'SystemAssigned,UserAssigned' 'UserAssigned'(필수) |
userAssignedIdentities | 리소스와 연결된 사용자 할당 ID 집합입니다. userAssignedIdentities 사전 키는 '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName} 형식의 ARM 리소스 ID입니다. 사전 값은 요청에서 빈 개체({})일 수 있습니다. | UserAssignedIdentities |
Microsoft.App/containerApps
이름 | 묘사 | 값 |
---|---|---|
apiVersion | api 버전 | '2024-10-02-preview' |
extendedLocation | 확장된 위치의 복합 형식입니다. | ExtendedLocation |
신원 | 코드에서 비밀 또는 자격 증명을 유지 관리하지 않고 컨테이너 앱이 다른 Azure 서비스와 상호 작용할 수 있도록 관리 ID입니다. | ManagedServiceIdentity |
종류 | 동일한 형식의 리소스에 대해 다른 환경을 렌더링하는 데 사용되는 메타데이터입니다. 예를 들어 WorkflowApp은 일종의 Microsoft.App/ContainerApps 형식입니다. 지원되는 경우 리소스 공급자는 이 값의 유효성을 검사하고 유지해야 합니다. | 'workflowapp' |
위치 | 리소스가 있는 지리적 위치 | string(필수) |
managedBy | 이 리소스를 관리하는 리소스의 정규화된 리소스 ID입니다. 이 리소스가 다른 Azure 리소스에서 관리되는지를 나타냅니다. 이 경우 전체 모드 배포는 다른 리소스에서 관리되므로 템플릿에서 제거된 경우 리소스를 삭제하지 않습니다. | 문자열 |
이름 | 리소스 이름 | string(필수) |
속성 | ContainerApp 리소스 관련 속성 | ContainerAppProperties |
태그 | 리소스 태그 | 태그 이름 및 값의 사전입니다. 템플릿 |
형 | 리소스 종류 | 'Microsoft.App/containerApps' |
QueueScaleRule
이름 | 묘사 | 값 |
---|---|---|
accountName | 스토리지 계정 이름입니다. 관리 ID를 사용하여 인증하는 경우 필수 | 문자열 |
인증 | 큐 크기 조정 규칙에 대한 인증 비밀입니다. | ScaleRuleAuth[] |
신원 | 컨테이너 앱에 할당된 사용자 할당 관리 ID의 리소스 ID이거나 시스템 할당 ID에 대한 '시스템'입니다. | 문자열 |
queueLength | 큐 길이입니다. | int |
queueName | 큐 이름입니다. | 문자열 |
RegistryCredentials
이름 | 묘사 | 값 |
---|---|---|
신원 | Azure Container Registry로 인증하는 데 사용할 관리 ID입니다. 사용자 할당 ID의 경우 전체 사용자 할당 ID 리소스 ID를 사용합니다. 시스템 할당 ID의 경우 'system'을 사용합니다. | 문자열 |
passwordSecretRef | 레지스트리 로그인 암호를 포함하는 비밀의 이름입니다. | 문자열 |
서버 | Container Registry Server | 문자열 |
사용자 이름 | Container Registry 사용자 이름 | 문자열 |
런타임
이름 | 묘사 | 값 |
---|---|---|
dotnet | .NET 앱 구성 | RuntimeDotnet |
자바 | Java 앱 구성 | RuntimeJava |
RuntimeDotnet
이름 | 묘사 | 값 |
---|---|---|
autoConfigureDataProtection | ASP.NET Core Data Protection 기능 자동 구성 | bool |
RuntimeJava
이름 | 묘사 | 값 |
---|---|---|
enableMetrics | Java 앱에 jmx 핵심 메트릭 사용 | bool |
javaAgent | Java 에이전트에서 달성한 진단 기능 | RuntimeJavaAgent |
RuntimeJavaAgent
이름 | 묘사 | 값 |
---|---|---|
사용 | Java 앱에 대해 Java 에이전트 삽입을 사용하도록 설정합니다. | bool |
로깅 | Java 로깅 시나리오의 기능입니다. | runtimeJavaAgentLogging |
RuntimeJavaAgentLogging
이름 | 묘사 | 값 |
---|---|---|
loggerSettings | Java 앱에 대한 로거 설정입니다. | LoggerSetting[] |
저울
이름 | 묘사 | 값 |
---|---|---|
cooldownPeriod | 선택적. KEDA 쿨다운 기간. 설정하지 않으면 기본값은 300초입니다. | int |
maxReplicas | 선택적. 컨테이너 복제본의 최대 수입니다. 설정되지 않은 경우 기본값은 10입니다. | int |
minReplicas | 선택적. 컨테이너 복제본의 최소 수입니다. | int |
pollingInterval | 선택적. KEDA 폴링 간격입니다. 설정되지 않은 경우 기본값은 30초입니다. | int |
규칙 | 규칙 크기 조정 | ScaleRule[] |
ScaleRule
이름 | 묘사 | 값 |
---|---|---|
azureQueue | Azure 큐 기반 크기 조정. | QueueScaleRule |
관습 | 사용자 지정 크기 조정 규칙입니다. | CustomScaleRule |
http(http) | HTTP 요청 기반 크기 조정 | httpScaleRule |
이름 | 크기 조정 규칙 이름 | 문자열 |
tcp | Tcp 요청 기반 크기 조정 | TcpScaleRule |
ScaleRuleAuth
이름 | 묘사 | 값 |
---|---|---|
secretRef | 인증 매개 변수를 끌어올 비밀의 이름입니다. | 문자열 |
triggerParameter | 비밀을 사용하는 트리거 매개 변수 | 문자열 |
비밀
이름 | 묘사 | 값 |
---|---|---|
신원 | Azure Key Vault로 인증할 관리 ID의 리소스 ID 또는 시스템 할당 ID를 사용하는 시스템입니다. | 문자열 |
keyVaultUrl | 컨테이너 앱에서 참조하는 비밀을 가리키는 Azure Key Vault URL입니다. | 문자열 |
이름 | 비밀 이름입니다. | 문자열 |
값 | 비밀 값입니다. | 문자열 제약 조건: 중요한 값입니다. 보안 매개 변수로 전달합니다. |
SecretVolumeItem
이름 | 묘사 | 값 |
---|---|---|
길 | 프로젝트 비밀에 대한 경로입니다. 경로가 제공되지 않은 경우 경로는 기본적으로 secretRef에 나열된 비밀의 이름으로 설정됩니다. | 문자열 |
secretRef | 비밀 값을 끌어올 컨테이너 앱 비밀의 이름입니다. | 문자열 |
서비스
이름 | 묘사 | 값 |
---|---|---|
형 | Dev ContainerApp 서비스 유형 | string(필수) |
ServiceBind
이름 | 묘사 | 값 |
---|---|---|
clientType | 서비스에 연결하는 데 사용할 클라이언트 유형 | 문자열 |
customizedKeys | 앱에 삽입된 값을 사용자 지정하기 위한 사용자 지정된 키 | ServiceBindCustomizedKeys |
이름 | 서비스 바인딩의 이름 | 문자열 |
serviceId | 대상 서비스의 리소스 ID | 문자열 |
ServiceBindCustomizedKeys
이름 | 묘사 | 값 |
---|
TcpScaleRule
이름 | 묘사 | 값 |
---|---|---|
인증 | tcp 크기 조정 규칙에 대한 인증 비밀입니다. | ScaleRuleAuth[] |
신원 | 컨테이너 앱에 할당된 사용자 할당 관리 ID의 리소스 ID이거나 시스템 할당 ID에 대한 '시스템'입니다. | 문자열 |
메타데이터 | tcp 크기 조정 규칙을 설명하는 메타데이터 속성입니다. | TcpScaleRuleMetadata |
TcpScaleRuleMetadata
이름 | 묘사 | 값 |
---|
템플렛
이름 | 묘사 | 값 |
---|---|---|
컨테이너 | 컨테이너 앱에 대한 컨테이너 정의 목록입니다. | 컨테이너[] |
initContainers | 앱 컨테이너 앞에서 실행되는 특수 컨테이너 목록입니다. | InitContainer[] |
revisionSuffix | 수정 이름에 추가된 사용자에게 친숙한 접미사 | 문자열 |
저울 | 컨테이너 앱의 크기 조정 속성입니다. | 크기 조정 |
serviceBinds | 앱에 바인딩된 컨테이너 앱 서비스 목록 | ServiceBind[] |
terminationGracePeriodSeconds | 컨테이너 앱 인스턴스가 정상적으로 종료되어야 하는 시간(초)입니다. 값은 음수가 아닌 정수여야 합니다. 값 0은 kill 신호를 통해 즉시 중지됨을 나타냅니다(종료할 기회가 없음). 이 값이 nil이면 기본 유예 기간이 대신 사용됩니다. 이 값을 프로세스의 예상 정리 시간보다 길게 설정합니다. 기본값은 30초입니다. | int |
볼륨 | 컨테이너 앱에 대한 볼륨 정의 목록입니다. | 볼륨[] |
TrackedResourceTags
이름 | 묘사 | 값 |
---|
TrafficWeight
이름 | 묘사 | 값 |
---|---|---|
레이블 | 트래픽 레이블을 수정 버전과 연결 | 문자열 |
latestRevision | 트래픽 가중치가 안정적인 최신 수정 버전에 속한다는 것을 나타냅니다. | bool |
revisionName | 수정 버전 이름 | 문자열 |
무게 | 수정 버전에 할당된 트래픽 가중치 | int |
UserAssignedIdentities
이름 | 묘사 | 값 |
---|
UserAssignedIdentity
이름 | 묘사 | 값 |
---|
음량
이름 | 묘사 | 값 |
---|---|---|
mountOptions | Azure 파일 공유 또는 NFS Azure 파일 공유를 탑재하는 동안 사용되는 탑재 옵션입니다. 쉼표로 구분된 문자열이어야 합니다. | 문자열 |
이름 | 볼륨 이름입니다. | 문자열 |
비밀 | 볼륨에 추가할 비밀 목록입니다. 비밀이 제공되지 않으면 컬렉션의 모든 비밀이 볼륨에 추가됩니다. | SecretVolumeItem[] |
storageName | 스토리지 리소스의 이름입니다. EmptyDir 및 Secret을 제공할 필요가 없습니다. | 문자열 |
storageType | 볼륨의 스토리지 유형입니다. 제공되지 않은 경우 EmptyDir을 사용합니다. | 'AzureFile' 'EmptyDir' 'NfsAzureFile' '비밀' 'Smb' |
VolumeMount
이름 | 묘사 | 값 |
---|---|---|
mountPath | 볼륨을 탑재해야 하는 컨테이너 내의 경로입니다. ':'을 포함하지 않아야 합니다. | 문자열 |
subPath | 컨테이너 볼륨을 탑재해야 하는 볼륨 내의 경로입니다. 기본값은 ""(볼륨의 루트)입니다. | 문자열 |
volumeName | 볼륨의 이름과 일치해야 합니다. | 문자열 |
빠른 시작 템플릿
다음 빠른 시작 템플릿은 이 리소스 유형을 배포합니다.
템플렛 | 묘사 |
---|---|
레지스트리 사용하여 컨테이너 앱 및 환경을 만듭니다. |
Azure Container Registry에서 기본 컨테이너 앱을 사용하여 컨테이너 앱 환경을 만듭니다. 또한 Log Analytics 작업 영역을 배포하여 로그를 저장합니다. |
정의된 HTTP 크기 조정 규칙 사용하여 컨테이너 앱을 만듭니다. |
HTTP 트래픽에 따라 크기가 조정되는 기본 컨테이너 앱을 사용하여 컨테이너 앱 환경을 만듭니다. |
컨테이너 앱 환경 내에 컨테이너 앱을 만듭니다. |
기본 컨테이너 앱을 사용하여 컨테이너 앱 환경을 만듭니다. 또한 Log Analytics 작업 영역을 배포하여 로그를 저장합니다. |
Container Apps 사용하여 Dapr 마이크로 서비스 앱을 만듭니다. |
Container Apps를 사용하여 Dapr 마이크로 서비스 앱을 만듭니다. |
Container Apps 사용하여 Dapr pub-sub servicebus 앱을 만듭니다. |
Container Apps를 사용하여 Dapr pub-sub servicebus 앱을 만듭니다. |
컨테이너 앱 환경 사용하여 두 개의 컨테이너 앱을 만듭니다. |
기본 컨테이너 앱을 사용하여 두 개의 컨테이너 앱 환경을 만듭니다. 또한 Log Analytics 작업 영역을 배포하여 로그를 저장합니다. |
VNET 사용하여 외부 컨테이너 앱 환경을 만듭니다. |
VNET을 사용하여 외부 컨테이너 앱 환경을 만듭니다. |
VNET 사용하여 내부 컨테이너 앱 환경을 만듭니다. |
VNET을 사용하여 내부 컨테이너 앱 환경을 만듭니다. |
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>< |
'레이블' 'Multiple' 'Single' |
dapr | 컨테이너 앱에 대한 Dapr 구성입니다. | Dapr |
identitySettings | 컨테이너 앱에 할당된 관리 ID에 대한 선택적 설정입니다. 여기에 관리 ID를 지정하지 않으면 기본 설정이 사용됩니다. | IdentitySettings[] |
진입 | 수신 구성. | 수신 |
maxInactiveRevisions | 선택적. 컨테이너 앱에 사용할 수 있는 최대 비활성 수정 버전입니다. | int |
레지스트리 | 컨테이너 앱에서 사용하는 컨테이너에 대한 프라이빗 컨테이너 레지스트리 자격 증명 컬렉션 | RegistryCredentials[] |
revisionTransitionThreshold | 선택적. 수정 버전 전환이 발생하기 전에 발생해야 하는 총 복제본 수의 백분율입니다. 지정되지 않은 경우 기본값은 100입니다. 값은 0보다 크고 100보다 작거나 같아야 합니다. | int 제약 조건: 최소값 = 1 최대값 = 100 |
런타임 | 컨테이너 앱에 대한 앱 런타임 구성입니다. | 런타임 |
비밀 | 컨테이너 앱에서 사용하는 비밀 컬렉션 | 비밀[] |
서비스 | 개발 Container App Service가 될 컨테이너 앱 | 서비스 |
targetLabel | 레이블 수정 모드에 필요합니다. 새로 만든 수정 버전에 적용할 레이블입니다. | 문자열 |
컨테이너
이름 | 묘사 | 값 |
---|---|---|
인수(args) | 컨테이너 시작 명령 인수입니다. | string[] |
명령 | 컨테이너 시작 명령입니다. | string[] |
환경을 | 컨테이너 환경 변수입니다. | 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이면 Pod의 terminationGracePeriodSeconds가 사용됩니다. 그렇지 않으면 이 값은 Pod 사양에서 제공하는 값을 재정의합니다. 값은 음수가 아닌 정수여야 합니다. 값 0은 kill 신호를 통해 즉시 중지됨을 나타냅니다(종료할 기회가 없음). 알파 필드이며 ProbeTerminationGracePeriod 기능 게이트를 사용하도록 설정해야 합니다. 최대값은 3600초(1시간)입니다. | int |
timeoutSeconds | 프로브 시간이 초과된 후의 시간(초)입니다. 기본값은 1초입니다. 최소값은 1입니다. 최대값은 240입니다. | int |
형 | 프로브의 형식입니다. | '활기' '준비' 'Startup' |
ContainerAppProbeHttpGet
이름 | 묘사 | 값 |
---|---|---|
호스트 | 연결할 호스트 이름입니다. 기본적으로 Pod IP가 사용됩니다. 대신 httpHeaders에서 "호스트"를 설정하려고 할 것입니다. | 문자열 |
httpHeaders | 요청에 설정할 사용자 지정 헤더입니다. HTTP는 반복되는 헤더를 허용합니다. | ContainerAppProbeHttpGetHttpHeadersItem[] |
길 | HTTP 서버에서 액세스하는 경로입니다. | 문자열 |
항구 | 컨테이너에서 액세스할 포트의 이름 또는 번호입니다. 번호는 1에서 65535까지의 범위에 있어야 합니다. 이름은 IANA_SVC_NAME 합니다. | int(필수) |
음모 | 호스트에 연결하는 데 사용할 체계입니다. 기본값은 HTTP입니다. | 'HTTP' 'HTTPS' |
ContainerAppProbeHttpGetHttpHeadersItem
이름 | 묘사 | 값 |
---|---|---|
이름 | 헤더 필드 이름 | string(필수) |
값 | 헤더 필드 값 | string(필수) |
ContainerAppProbeTcpSocket
이름 | 묘사 | 값 |
---|---|---|
호스트 | 선택 사항: 연결할 호스트 이름, 기본값은 Pod IP입니다. | 문자열 |
항구 | 컨테이너에서 액세스할 포트의 번호 또는 이름입니다. 번호는 1에서 65535까지의 범위에 있어야 합니다. 이름은 IANA_SVC_NAME 합니다. | int(필수) |
ContainerAppProperties
이름 | 묘사 | 값 |
---|---|---|
구성 | 버전이 지정되지 않은 Container App 구성 속성입니다. | Configuration |
environmentId | 환경의 리소스 ID입니다. | 문자열 |
managedEnvironmentId | 되지 않는. 컨테이너 앱 환경의 리소스 ID입니다. | 문자열 |
patchingConfiguration | 컨테이너 앱 자동 패치 구성. | ContainerAppPropertiesPatchingConfiguration |
템플렛 | 컨테이너 앱 버전이 지정된 애플리케이션 정의입니다. | 템플릿 |
workloadProfileName | 컨테이너 앱 실행을 위해 고정할 워크로드 프로필 이름입니다. | 문자열 |
ContainerAppPropertiesPatchingConfiguration
이름 | 묘사 | 값 |
---|---|---|
patchingMode | 컨테이너 앱에 대한 패치 모드입니다. 이 필드의 Null 또는 기본값은 RP에 의해 자동으로 해석됩니다. 자동 모드는 사용 가능한 패치를 자동으로 적용합니다. 수동 모드에서는 사용자가 패치를 수동으로 적용해야 합니다. 비활성화된 모드는 패치 검색 및 자동 패치를 중지합니다. | 'Automatic' '사용 안 함' '수동' |
ContainerResources
이름 | 묘사 | 값 |
---|---|---|
cpu(cpu) | 코어의 필수 CPU(예: 0.5) | int |
gpu | GPU 기반 앱의 코어에 필요한 GPU(예: 1.0) | int |
기억 | 필요한 메모리(예: "250Mb") | 문자열 |
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 | 사용자 지정 도메인 바인딩 형식입니다. | 'Auto' '사용 안 함' 'SniEnabled' |
certificateId | 이 호스트 이름에 바인딩할 인증서의 리소스 ID입니다. 관리되는 환경에 있어야 합니다. | 문자열 |
이름 | 호스트 이름입니다. | string(필수) |
CustomScaleRule
이름 | 묘사 | 값 |
---|---|---|
인증 | 사용자 지정 크기 조정 규칙에 대한 인증 비밀입니다. | ScaleRuleAuth[] |
신원 | 컨테이너 앱에 할당된 사용자 할당 관리 ID의 리소스 ID이거나 시스템 할당 ID에 대한 '시스템'입니다. | 문자열 |
메타데이터 | 사용자 지정 크기 조정 규칙을 설명하는 메타데이터 속성입니다. | CustomScaleRuleMetadata |
형 | 사용자 지정 배율 규칙의 형식 예: azure-servicebus, redis 등 |
문자열 |
CustomScaleRuleMetadata
이름 | 묘사 | 값 |
---|
다프(Dapr)
이름 | 묘사 | 값 |
---|---|---|
appId | Dapr 애플리케이션 식별자 | 문자열 |
appPort | 애플리케이션이 수신 대기 중인 포트를 Dapr에 알릴 수 있습니다. | int |
appProtocol | 애플리케이션에서 사용 중인 프로토콜을 Dapr에 알릴 수 있습니다. 유효한 옵션은 http 및 grpc입니다. 기본값은 http입니다. | 'grpc' 'http' |
enableApiLogging | Dapr 사이드카에 대한 API 로깅 사용 | bool |
사용 | Dapr 사이드카를 사용할 수 있는지 여부를 나타내는 부울 | bool |
httpMaxRequestSize | 큰 파일 업로드를 처리하기 위해 요청 본문 http 및 grpc 서버 매개 변수의 최대 크기를 MB로 늘입니다. 기본값은 4MB입니다. | int |
httpReadBufferSize | 다중 KB 헤더를 보낼 때 처리할 HTTP 헤더 읽기 버퍼의 Dapr 최대 크기입니다. 기본값은 65KB입니다. | int |
logLevel | Dapr 사이드카의 로그 수준을 설정합니다. 허용되는 값은 디버그, 정보, 경고, 오류입니다. 기본값은 정보입니다. | 'debug' 'error' 'info' '경고' |
EnvironmentVar
이름 | 묘사 | 값 |
---|---|---|
이름 | 환경 변수 이름입니다. | 문자열 |
secretRef | 환경 변수 값을 끌어올 컨테이너 앱 비밀의 이름입니다. | 문자열 |
값 | 비밀이 아닌 환경 변수 값입니다. | 문자열 |
ExtendedLocation
이름 | 묘사 | 값 |
---|---|---|
이름 | 확장된 위치의 이름입니다. | 문자열 |
형 | 확장된 위치의 형식입니다. | 'CustomLocation' |
HttpScaleRule
이름 | 묘사 | 값 |
---|---|---|
인증 | 사용자 지정 크기 조정 규칙에 대한 인증 비밀입니다. | ScaleRuleAuth[] |
신원 | 컨테이너 앱에 할당된 사용자 할당 관리 ID의 리소스 ID이거나 시스템 할당 ID에 대한 '시스템'입니다. | 문자열 |
메타데이터 | http 크기 조정 규칙을 설명하는 메타데이터 속성입니다. | httpScaleRuleMetadata |
HttpScaleRuleMetadata
이름 | 묘사 | 값 |
---|
IdentitySettings
이름 | 묘사 | 값 |
---|---|---|
신원 | 컨테이너 앱에 할당된 사용자 할당 관리 ID의 리소스 ID이거나 시스템 할당 ID에 대한 '시스템'입니다. | string(필수) |
수명 주기 | 관리 ID를 사용할 수 있어야 하는 컨테이너 앱의 수명 주기 단계를 선택하는 데 사용합니다. | 'All' 'Init' 'Main' 'None' |
진입
이름 | 묘사 | 값 |
---|---|---|
additionalPortMappings | 컨테이너 앱에 추가 포트를 노출하는 설정 | IngressPortMapping[] |
allowInsecure | HTTP 연결이 허용되는지 여부를 나타내는 부울입니다. false HTTP 연결로 설정된 경우 HTTPS 연결로 자동으로 리디렉션됩니다. | bool |
clientCertificateMode | mTLS 인증을 위한 클라이언트 인증서 모드입니다. 무시는 서버가 전달에 클라이언트 인증서를 삭제함을 나타냅니다. 수락은 서버가 클라이언트 인증서를 전달하지만 클라이언트 인증서가 필요하지 않음을 나타냅니다. 서버에서 클라이언트 인증서가 필요했음을 나타냅니다. | '수락' 'ignore' 'require' |
corsPolicy | 컨테이너 앱에 대한 CORS 정책 | CorsPolicy |
customDomains | Container Apps 호스트 이름에 대한 사용자 지정 도메인 바인딩입니다. | customDomain |
exposedPort | 수신에서 TCP 트래픽에 대한 컨테이너의 노출된 포트 | int |
외부 | 앱이 외부 http 엔드포인트를 노출하는지 여부를 나타내는 Bool | bool |
ipSecurityRestrictions | 들어오는 IP 주소를 제한하는 규칙입니다. | ipSecurityRestrictionRule |
stickySessions | 단일 수정 모드에 대한 고정 세션 | IngressStickySessions |
targetPort | 수신 트래픽에 대한 컨테이너의 대상 포트 | int |
targetPortHttpScheme | http 앱이 http 또는 https에서 수신 대기하는지 여부 | 'http' 'https' |
교통 | 앱의 수정 버전에 대한 트래픽 가중치 | TrafficWeight[] |
수송 | 수신 전송 프로토콜 | 'auto' 'http' 'http2' 'tcp' |
IngressPortMapping
이름 | 묘사 | 값 |
---|---|---|
exposedPort | 대상 포트에 대해 노출된 포트를 지정합니다. 지정하지 않으면 기본적으로 대상 포트로 설정됩니다. | int |
외부 | 환경 외부에서 앱 포트에 액세스할 수 있는지 여부를 지정합니다. | bool(필수) |
targetPort | 포트 사용자의 컨테이너 수신 대기를 지정합니다. | int(필수) |
IngressStickySessions
이름 | 묘사 | 값 |
---|---|---|
선호도 | 고정 세션 선호도 | 'none' '끈적끈적한' |
InitContainer
이름 | 묘사 | 값 |
---|---|---|
인수(args) | 컨테이너 시작 명령 인수입니다. | string[] |
명령 | 컨테이너 시작 명령입니다. | string[] |
환경을 | 컨테이너 환경 변수입니다. | EnvironmentVar[] |
이미지 | 컨테이너 이미지 태그입니다. | 문자열 |
이미지 유형 | 이미지의 형식입니다. 시스템에서 이미지를 관리할 수 있도록 CloudBuild로 설정합니다. 여기서 사용자는 이미지 필드를 통해 이미지를 업데이트할 수 없습니다. 사용자가 제공한 이미지에 대해 ContainerImage로 설정합니다. | 'CloudBuild' 'ContainerImage' |
이름 | 사용자 지정 컨테이너 이름입니다. | 문자열 |
리소스 | 컨테이너 리소스 요구 사항. | containerResources |
volumeMounts | 컨테이너 볼륨 탑재. | VolumeMount[] |
IpSecurityRestrictionRule
이름 | 묘사 | 값 |
---|---|---|
행동 | 들어오는 IP를 결정하는 규칙을 허용하거나 거부합니다. 참고: 규칙은 ALL 허용 또는 모든 거부로만 구성됩니다. | '허용' 'Deny'(필수) |
묘사 | 컨테이너 앱으로 전송되는 IP 제한 규칙을 설명합니다. 선택적 필드입니다. | 문자열 |
ipAddressRange | 들어오는 IP 주소와 일치하는 CIDR 표기법 | string(필수) |
이름 | IP 제한 규칙의 이름입니다. | string(필수) |
LoggerSetting
이름 | 묘사 | 값 |
---|---|---|
수준 | 지정된 로거의 로그 수준입니다. | 'debug' 'error' 'info' 'off' 'trace' 'warn'(필수) |
거 | 로거 이름입니다. | string(필수) |
ManagedServiceIdentity
이름 | 묘사 | 값 |
---|---|---|
형 | 관리 서비스 ID의 유형입니다(SystemAssigned 및 UserAssigned 형식이 모두 허용되는 경우). | 'None' 'SystemAssigned' 'SystemAssigned,UserAssigned' 'UserAssigned'(필수) |
userAssignedIdentities | 리소스와 연결된 사용자 할당 ID 집합입니다. userAssignedIdentities 사전 키는 '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName} 형식의 ARM 리소스 ID입니다. 사전 값은 요청에서 빈 개체({})일 수 있습니다. | UserAssignedIdentities |
Microsoft.App/containerApps
이름 | 묘사 | 값 |
---|---|---|
extendedLocation | 확장된 위치의 복합 형식입니다. | ExtendedLocation |
신원 | 코드에서 비밀 또는 자격 증명을 유지 관리하지 않고 컨테이너 앱이 다른 Azure 서비스와 상호 작용할 수 있도록 관리 ID입니다. | ManagedServiceIdentity |
종류 | 동일한 형식의 리소스에 대해 다른 환경을 렌더링하는 데 사용되는 메타데이터입니다. 예를 들어 WorkflowApp은 일종의 Microsoft.App/ContainerApps 형식입니다. 지원되는 경우 리소스 공급자는 이 값의 유효성을 검사하고 유지해야 합니다. | 'workflowapp' |
위치 | 리소스가 있는 지리적 위치 | string(필수) |
managedBy | 이 리소스를 관리하는 리소스의 정규화된 리소스 ID입니다. 이 리소스가 다른 Azure 리소스에서 관리되는지를 나타냅니다. 이 경우 전체 모드 배포는 다른 리소스에서 관리되므로 템플릿에서 제거된 경우 리소스를 삭제하지 않습니다. | 문자열 |
이름 | 리소스 이름 | string(필수) |
속성 | ContainerApp 리소스 관련 속성 | ContainerAppProperties |
태그 | 리소스 태그 | 태그 이름 및 값의 사전입니다. |
형 | 리소스 종류 | "Microsoft.App/containerApps@2024-10-02-preview" |
QueueScaleRule
이름 | 묘사 | 값 |
---|---|---|
accountName | 스토리지 계정 이름입니다. 관리 ID를 사용하여 인증하는 경우 필수 | 문자열 |
인증 | 큐 크기 조정 규칙에 대한 인증 비밀입니다. | ScaleRuleAuth[] |
신원 | 컨테이너 앱에 할당된 사용자 할당 관리 ID의 리소스 ID이거나 시스템 할당 ID에 대한 '시스템'입니다. | 문자열 |
queueLength | 큐 길이입니다. | int |
queueName | 큐 이름입니다. | 문자열 |
RegistryCredentials
이름 | 묘사 | 값 |
---|---|---|
신원 | Azure Container Registry로 인증하는 데 사용할 관리 ID입니다. 사용자 할당 ID의 경우 전체 사용자 할당 ID 리소스 ID를 사용합니다. 시스템 할당 ID의 경우 'system'을 사용합니다. | 문자열 |
passwordSecretRef | 레지스트리 로그인 암호를 포함하는 비밀의 이름입니다. | 문자열 |
서버 | Container Registry Server | 문자열 |
사용자 이름 | Container Registry 사용자 이름 | 문자열 |
런타임
이름 | 묘사 | 값 |
---|---|---|
dotnet | .NET 앱 구성 | RuntimeDotnet |
자바 | Java 앱 구성 | RuntimeJava |
RuntimeDotnet
이름 | 묘사 | 값 |
---|---|---|
autoConfigureDataProtection | ASP.NET Core Data Protection 기능 자동 구성 | bool |
RuntimeJava
이름 | 묘사 | 값 |
---|---|---|
enableMetrics | Java 앱에 jmx 핵심 메트릭 사용 | bool |
javaAgent | Java 에이전트에서 달성한 진단 기능 | RuntimeJavaAgent |
RuntimeJavaAgent
이름 | 묘사 | 값 |
---|---|---|
사용 | Java 앱에 대해 Java 에이전트 삽입을 사용하도록 설정합니다. | bool |
로깅 | Java 로깅 시나리오의 기능입니다. | runtimeJavaAgentLogging |
RuntimeJavaAgentLogging
이름 | 묘사 | 값 |
---|---|---|
loggerSettings | Java 앱에 대한 로거 설정입니다. | LoggerSetting[] |
저울
이름 | 묘사 | 값 |
---|---|---|
cooldownPeriod | 선택적. KEDA 쿨다운 기간. 설정하지 않으면 기본값은 300초입니다. | int |
maxReplicas | 선택적. 컨테이너 복제본의 최대 수입니다. 설정되지 않은 경우 기본값은 10입니다. | int |
minReplicas | 선택적. 컨테이너 복제본의 최소 수입니다. | int |
pollingInterval | 선택적. KEDA 폴링 간격입니다. 설정되지 않은 경우 기본값은 30초입니다. | int |
규칙 | 규칙 크기 조정 | ScaleRule[] |
ScaleRule
이름 | 묘사 | 값 |
---|---|---|
azureQueue | Azure 큐 기반 크기 조정. | QueueScaleRule |
관습 | 사용자 지정 크기 조정 규칙입니다. | CustomScaleRule |
http(http) | HTTP 요청 기반 크기 조정 | httpScaleRule |
이름 | 크기 조정 규칙 이름 | 문자열 |
tcp | Tcp 요청 기반 크기 조정 | TcpScaleRule |
ScaleRuleAuth
이름 | 묘사 | 값 |
---|---|---|
secretRef | 인증 매개 변수를 끌어올 비밀의 이름입니다. | 문자열 |
triggerParameter | 비밀을 사용하는 트리거 매개 변수 | 문자열 |
비밀
이름 | 묘사 | 값 |
---|---|---|
신원 | Azure Key Vault로 인증할 관리 ID의 리소스 ID 또는 시스템 할당 ID를 사용하는 시스템입니다. | 문자열 |
keyVaultUrl | 컨테이너 앱에서 참조하는 비밀을 가리키는 Azure Key Vault URL입니다. | 문자열 |
이름 | 비밀 이름입니다. | 문자열 |
값 | 비밀 값입니다. | 문자열 제약 조건: 중요한 값입니다. 보안 매개 변수로 전달합니다. |
SecretVolumeItem
이름 | 묘사 | 값 |
---|---|---|
길 | 프로젝트 비밀에 대한 경로입니다. 경로가 제공되지 않은 경우 경로는 기본적으로 secretRef에 나열된 비밀의 이름으로 설정됩니다. | 문자열 |
secretRef | 비밀 값을 끌어올 컨테이너 앱 비밀의 이름입니다. | 문자열 |
서비스
이름 | 묘사 | 값 |
---|---|---|
형 | Dev ContainerApp 서비스 유형 | string(필수) |
ServiceBind
이름 | 묘사 | 값 |
---|---|---|
clientType | 서비스에 연결하는 데 사용할 클라이언트 유형 | 문자열 |
customizedKeys | 앱에 삽입된 값을 사용자 지정하기 위한 사용자 지정된 키 | ServiceBindCustomizedKeys |
이름 | 서비스 바인딩의 이름 | 문자열 |
serviceId | 대상 서비스의 리소스 ID | 문자열 |
ServiceBindCustomizedKeys
이름 | 묘사 | 값 |
---|
TcpScaleRule
이름 | 묘사 | 값 |
---|---|---|
인증 | tcp 크기 조정 규칙에 대한 인증 비밀입니다. | ScaleRuleAuth[] |
신원 | 컨테이너 앱에 할당된 사용자 할당 관리 ID의 리소스 ID이거나 시스템 할당 ID에 대한 '시스템'입니다. | 문자열 |
메타데이터 | tcp 크기 조정 규칙을 설명하는 메타데이터 속성입니다. | TcpScaleRuleMetadata |
TcpScaleRuleMetadata
이름 | 묘사 | 값 |
---|
템플렛
이름 | 묘사 | 값 |
---|---|---|
컨테이너 | 컨테이너 앱에 대한 컨테이너 정의 목록입니다. | 컨테이너[] |
initContainers | 앱 컨테이너 앞에서 실행되는 특수 컨테이너 목록입니다. | InitContainer[] |
revisionSuffix | 수정 이름에 추가된 사용자에게 친숙한 접미사 | 문자열 |
저울 | 컨테이너 앱의 크기 조정 속성입니다. | 크기 조정 |
serviceBinds | 앱에 바인딩된 컨테이너 앱 서비스 목록 | ServiceBind[] |
terminationGracePeriodSeconds | 컨테이너 앱 인스턴스가 정상적으로 종료되어야 하는 시간(초)입니다. 값은 음수가 아닌 정수여야 합니다. 값 0은 kill 신호를 통해 즉시 중지됨을 나타냅니다(종료할 기회가 없음). 이 값이 nil이면 기본 유예 기간이 대신 사용됩니다. 이 값을 프로세스의 예상 정리 시간보다 길게 설정합니다. 기본값은 30초입니다. | int |
볼륨 | 컨테이너 앱에 대한 볼륨 정의 목록입니다. | 볼륨[] |
TrackedResourceTags
이름 | 묘사 | 값 |
---|
TrafficWeight
이름 | 묘사 | 값 |
---|---|---|
레이블 | 트래픽 레이블을 수정 버전과 연결 | 문자열 |
latestRevision | 트래픽 가중치가 안정적인 최신 수정 버전에 속한다는 것을 나타냅니다. | bool |
revisionName | 수정 버전 이름 | 문자열 |
무게 | 수정 버전에 할당된 트래픽 가중치 | int |
UserAssignedIdentities
이름 | 묘사 | 값 |
---|
UserAssignedIdentity
이름 | 묘사 | 값 |
---|
음량
이름 | 묘사 | 값 |
---|---|---|
mountOptions | Azure 파일 공유 또는 NFS Azure 파일 공유를 탑재하는 동안 사용되는 탑재 옵션입니다. 쉼표로 구분된 문자열이어야 합니다. | 문자열 |
이름 | 볼륨 이름입니다. | 문자열 |
비밀 | 볼륨에 추가할 비밀 목록입니다. 비밀이 제공되지 않으면 컬렉션의 모든 비밀이 볼륨에 추가됩니다. | SecretVolumeItem[] |
storageName | 스토리지 리소스의 이름입니다. EmptyDir 및 Secret을 제공할 필요가 없습니다. | 문자열 |
storageType | 볼륨의 스토리지 유형입니다. 제공되지 않은 경우 EmptyDir을 사용합니다. | 'AzureFile' 'EmptyDir' 'NfsAzureFile' '비밀' 'Smb' |
VolumeMount
이름 | 묘사 | 값 |
---|---|---|
mountPath | 볼륨을 탑재해야 하는 컨테이너 내의 경로입니다. ':'을 포함하지 않아야 합니다. | 문자열 |
subPath | 컨테이너 볼륨을 탑재해야 하는 볼륨 내의 경로입니다. 기본값은 ""(볼륨의 루트)입니다. | 문자열 |
volumeName | 볼륨의 이름과 일치해야 합니다. | 문자열 |