Microsoft.App 작업
Bicep 리소스 정의
작업 리소스 종류는 다음을 대상으로 하는 작업과 함께 배포할 수 있습니다.
- 리소스 그룹 - 리소스 그룹 배포 명령 참조
각 API 버전에서 변경된 속성 목록은 변경 로그참조하세요.
리소스 형식
Microsoft.App/jobs 리소스를 만들려면 템플릿에 다음 Bicep을 추가합니다.
resource symbolicname 'Microsoft.App/jobs@2024-10-02-preview' = {
extendedLocation: {
name: 'string'
type: 'string'
}
identity: {
type: 'string'
userAssignedIdentities: {
{customized property}: {}
}
}
location: 'string'
name: 'string'
properties: {
configuration: {
eventTriggerConfig: {
parallelism: int
replicaCompletionCount: int
scale: {
maxExecutions: int
minExecutions: int
pollingInterval: int
rules: [
{
auth: [
{
secretRef: 'string'
triggerParameter: 'string'
}
]
identity: 'string'
metadata: any(Azure.Bicep.Types.Concrete.AnyType)
name: 'string'
type: 'string'
}
]
}
}
identitySettings: [
{
identity: 'string'
lifecycle: 'string'
}
]
manualTriggerConfig: {
parallelism: int
replicaCompletionCount: int
}
registries: [
{
identity: 'string'
passwordSecretRef: 'string'
server: 'string'
username: 'string'
}
]
replicaRetryLimit: int
replicaTimeout: int
scheduleTriggerConfig: {
cronExpression: 'string'
parallelism: int
replicaCompletionCount: int
}
secrets: [
{
identity: 'string'
keyVaultUrl: 'string'
name: 'string'
value: 'string'
}
]
triggerType: 'string'
}
environmentId: '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'
}
]
}
]
volumes: [
{
mountOptions: 'string'
name: 'string'
secrets: [
{
path: 'string'
secretRef: 'string'
}
]
storageName: 'string'
storageType: 'string'
}
]
}
workloadProfileName: 'string'
}
tags: {
{customized property}: 'string'
}
}
속성 값
컨테이너
이름 | 묘사 | 값 |
---|---|---|
인수(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(필수) |
ContainerResources
이름 | 묘사 | 값 |
---|---|---|
cpu(cpu) | 코어의 필수 CPU(예: 0.5) | int |
gpu | GPU 기반 앱의 코어에 필요한 GPU(예: 1.0) | int |
기억 | 필요한 메모리(예: "250Mb") | 문자열 |
EnvironmentVar
이름 | 묘사 | 값 |
---|---|---|
이름 | 환경 변수 이름입니다. | 문자열 |
secretRef | 환경 변수 값을 끌어올 컨테이너 앱 비밀의 이름입니다. | 문자열 |
값 | 비밀이 아닌 환경 변수 값입니다. | 문자열 |
ExtendedLocation
이름 | 묘사 | 값 |
---|---|---|
이름 | 확장된 위치의 이름입니다. | 문자열 |
형 | 확장된 위치의 형식입니다. | 'CustomLocation' |
IdentitySettings
이름 | 묘사 | 값 |
---|---|---|
신원 | 컨테이너 앱에 할당된 사용자 할당 관리 ID의 리소스 ID이거나 시스템 할당 ID에 대한 '시스템'입니다. | string(필수) |
수명 주기 | 관리 ID를 사용할 수 있어야 하는 컨테이너 앱의 수명 주기 단계를 선택하는 데 사용합니다. | 'All' 'Init' 'Main' 'None' |
InitContainer
이름 | 묘사 | 값 |
---|---|---|
인수(args) | 컨테이너 시작 명령 인수입니다. | string[] |
명령 | 컨테이너 시작 명령입니다. | string[] |
환경을 | 컨테이너 환경 변수입니다. | EnvironmentVar[] |
이미지 | 컨테이너 이미지 태그입니다. | 문자열 |
이미지 유형 | 이미지의 형식입니다. 시스템에서 이미지를 관리할 수 있도록 CloudBuild로 설정합니다. 여기서 사용자는 이미지 필드를 통해 이미지를 업데이트할 수 없습니다. 사용자가 제공한 이미지에 대해 ContainerImage로 설정합니다. | 'CloudBuild' 'ContainerImage' |
이름 | 사용자 지정 컨테이너 이름입니다. | 문자열 |
리소스 | 컨테이너 리소스 요구 사항. | containerResources |
volumeMounts | 컨테이너 볼륨 탑재. | VolumeMount[] |
JobConfiguration
이름 | 묘사 | 값 |
---|---|---|
eventTriggerConfig | 이벤트 기반 작업의 구성을 트리거합니다. | JobConfigurationEventTriggerConfig |
identitySettings | 컨테이너 앱 작업에 할당된 관리 ID에 대한 선택적 설정입니다. 여기에 관리 ID를 지정하지 않으면 기본 설정이 사용됩니다. | IdentitySettings[] |
manualTriggerConfig | 단일 실행 작업에 대한 수동 트리거 구성입니다. 속성 replicaCompletionCount 및 병렬 처리는 기본적으로 1로 설정됩니다. | JobConfigurationManualTriggerConfig |
레지스트리 | 컨테이너 앱 작업에서 사용하는 프라이빗 컨테이너 레지스트리 자격 증명 컬렉션 | RegistryCredentials[] |
replicaRetryLimit | 작업에 실패하기 전 최대 재시도 횟수입니다. | int |
replicaTimeout | 복제본을 실행할 수 있는 최대 시간(초)입니다. | int(필수) |
scheduleTriggerConfig | cron 형식의 반복 트리거 일정("* * * * *")은 cronjobs에 대해 지정되었습니다. 속성 완성 및 병렬 처리는 기본적으로 1로 설정됩니다. | JobConfigurationScheduleTriggerConfig |
비밀 | Container Apps 작업에서 사용하는 비밀 컬렉션 | 비밀[] |
triggerType | 작업 트리거 유형 | 'Event' '수동' 'Schedule'(필수) |
JobConfigurationEventTriggerConfig
이름 | 묘사 | 값 |
---|---|---|
평행도 | 지정된 시간에 실행할 수 있는 작업의 병렬 복제본 수입니다. | int |
replicaCompletionCount | 전체 작업을 완료하기 전에 복제본 완료에 성공한 최소 수입니다. | int |
저울 | 이벤트 기반 작업에 대한 구성 크기 조정 | JobScale |
JobConfigurationManualTriggerConfig
이름 | 묘사 | 값 |
---|---|---|
평행도 | 지정된 시간에 실행할 수 있는 작업의 병렬 복제본 수입니다. | int |
replicaCompletionCount | 전체 작업을 완료하기 전에 복제본 완료에 성공한 최소 수입니다. | int |
JobConfigurationScheduleTriggerConfig
이름 | 묘사 | 값 |
---|---|---|
cronExpression | Cron 작업의 반복 일정("* * * * *")을 지정했습니다. | string(필수) |
평행도 | 지정된 시간에 실행할 수 있는 작업의 병렬 복제본 수입니다. | int |
replicaCompletionCount | 전체 작업을 완료하기 전에 복제본 완료에 성공한 최소 수입니다. | int |
JobProperties
이름 | 묘사 | 값 |
---|---|---|
구성 | Container Apps 작업 구성 속성입니다. | JobConfiguration |
environmentId | 환경의 리소스 ID입니다. | 문자열 |
템플렛 | Container Apps 작업 정의입니다. | JobTemplate |
workloadProfileName | 컨테이너 앱 작업 실행을 위해 고정할 워크로드 프로필 이름입니다. | 문자열 |
작업 크기 조정
이름 | 묘사 | 값 |
---|---|---|
maxExecutions | 트리거에 대해 생성된 최대 작업 실행 수(기본값: 100)입니다. | int |
minExecutions | 트리거에 대해 만들어진 최소 작업 실행 수, 기본값 0 | int |
pollingInterval | 각 이벤트 원본을 확인하는 간격(초)입니다. 기본값: 30대 | int |
규칙 | 규칙 크기 조정 | JobScaleRule[] |
JobScaleRule
이름 | 묘사 | 값 |
---|---|---|
인증 | 크기 조정 규칙에 대한 인증 비밀입니다. | ScaleRuleAuth[] |
신원 | 작업에 할당된 사용자 할당 관리 ID의 리소스 ID이거나 시스템 할당 ID에 대한 '시스템'입니다. | 문자열 |
메타데이터 | 크기 조정 규칙을 설명하는 메타데이터 속성입니다. | 어떤 |
이름 | 크기 조정 규칙 이름 | 문자열 |
형 | 배율 규칙의 형식 예: azure-servicebus, redis 등 |
문자열 |
JobTemplate
이름 | 묘사 | 값 |
---|---|---|
컨테이너 | 컨테이너 앱에 대한 컨테이너 정의 목록입니다. | 컨테이너[] |
initContainers | 앱 컨테이너 앞에서 실행되는 특수 컨테이너 목록입니다. | InitContainer[] |
볼륨 | 컨테이너 앱에 대한 볼륨 정의 목록입니다. | 볼륨[] |
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/jobs
이름 | 묘사 | 값 |
---|---|---|
extendedLocation | 확장된 위치의 복합 형식입니다. | ExtendedLocation |
신원 | 코드에서 비밀 또는 자격 증명을 유지 관리하지 않기 위해 컨테이너 앱 작업에서 다른 Azure 서비스와 상호 작용하는 데 필요한 관리 ID입니다. | ManagedServiceIdentity |
위치 | 리소스가 있는 지리적 위치 | string(필수) |
이름 | 리소스 이름 | 문자열 제약 조건: 패턴 = ^[-\w\._\(\)]+$ (필수) |
속성 | Container Apps 작업 리소스 관련 속성입니다. | JobProperties |
태그 | 리소스 태그 | 태그 이름 및 값의 사전입니다. 템플릿 |
RegistryCredentials
이름 | 묘사 | 값 |
---|---|---|
신원 | Azure Container Registry로 인증하는 데 사용할 관리 ID입니다. 사용자 할당 ID의 경우 전체 사용자 할당 ID 리소스 ID를 사용합니다. 시스템 할당 ID의 경우 'system'을 사용합니다. | 문자열 |
passwordSecretRef | 레지스트리 로그인 암호를 포함하는 비밀의 이름입니다. | 문자열 |
서버 | Container Registry Server | 문자열 |
사용자 이름 | Container Registry 사용자 이름 | 문자열 |
ScaleRuleAuth
이름 | 묘사 | 값 |
---|---|---|
secretRef | 인증 매개 변수를 끌어올 비밀의 이름입니다. | 문자열 |
triggerParameter | 비밀을 사용하는 트리거 매개 변수 | 문자열 |
비밀
이름 | 묘사 | 값 |
---|---|---|
신원 | Azure Key Vault로 인증할 관리 ID의 리소스 ID 또는 시스템 할당 ID를 사용하는 시스템입니다. | 문자열 |
keyVaultUrl | 컨테이너 앱에서 참조하는 비밀을 가리키는 Azure Key Vault URL입니다. | 문자열 |
이름 | 비밀 이름입니다. | 문자열 |
값 | 비밀 값입니다. | 문자열 제약 조건: 중요한 값입니다. 보안 매개 변수로 전달합니다. |
SecretVolumeItem
이름 | 묘사 | 값 |
---|---|---|
길 | 프로젝트 비밀에 대한 경로입니다. 경로가 제공되지 않은 경우 경로는 기본적으로 secretRef에 나열된 비밀의 이름으로 설정됩니다. | 문자열 |
secretRef | 비밀 값을 끌어올 컨테이너 앱 비밀의 이름입니다. | 문자열 |
TrackedResourceTags
이름 | 묘사 | 값 |
---|
UserAssignedIdentities
이름 | 묘사 | 값 |
---|
UserAssignedIdentity
이름 | 묘사 | 값 |
---|
음량
이름 | 묘사 | 값 |
---|---|---|
mountOptions | Azure 파일 공유 또는 NFS Azure 파일 공유를 탑재하는 동안 사용되는 탑재 옵션입니다. 쉼표로 구분된 문자열이어야 합니다. | 문자열 |
이름 | 볼륨 이름입니다. | 문자열 |
비밀 | 볼륨에 추가할 비밀 목록입니다. 비밀이 제공되지 않으면 컬렉션의 모든 비밀이 볼륨에 추가됩니다. | SecretVolumeItem[] |
storageName | 스토리지 리소스의 이름입니다. EmptyDir 및 Secret을 제공할 필요가 없습니다. | 문자열 |
storageType | 볼륨의 스토리지 유형입니다. 제공되지 않은 경우 EmptyDir을 사용합니다. | 'AzureFile' 'EmptyDir' 'NfsAzureFile' '비밀' 'Smb' |
VolumeMount
이름 | 묘사 | 값 |
---|---|---|
mountPath | 볼륨을 탑재해야 하는 컨테이너 내의 경로입니다. ':'을 포함하지 않아야 합니다. | 문자열 |
subPath | 컨테이너 볼륨을 탑재해야 하는 볼륨 내의 경로입니다. 기본값은 ""(볼륨의 루트)입니다. | 문자열 |
volumeName | 볼륨의 이름과 일치해야 합니다. | 문자열 |
ARM 템플릿 리소스 정의
작업 리소스 종류는 다음을 대상으로 하는 작업과 함께 배포할 수 있습니다.
- 리소스 그룹 - 리소스 그룹 배포 명령 참조
각 API 버전에서 변경된 속성 목록은 변경 로그참조하세요.
리소스 형식
Microsoft.App/jobs 리소스를 만들려면 템플릿에 다음 JSON을 추가합니다.
{
"type": "Microsoft.App/jobs",
"apiVersion": "2024-10-02-preview",
"name": "string",
"extendedLocation": {
"name": "string",
"type": "string"
},
"identity": {
"type": "string",
"userAssignedIdentities": {
"{customized property}": {
}
}
},
"location": "string",
"properties": {
"configuration": {
"eventTriggerConfig": {
"parallelism": "int",
"replicaCompletionCount": "int",
"scale": {
"maxExecutions": "int",
"minExecutions": "int",
"pollingInterval": "int",
"rules": [
{
"auth": [
{
"secretRef": "string",
"triggerParameter": "string"
}
],
"identity": "string",
"metadata": {},
"name": "string",
"type": "string"
}
]
}
},
"identitySettings": [
{
"identity": "string",
"lifecycle": "string"
}
],
"manualTriggerConfig": {
"parallelism": "int",
"replicaCompletionCount": "int"
},
"registries": [
{
"identity": "string",
"passwordSecretRef": "string",
"server": "string",
"username": "string"
}
],
"replicaRetryLimit": "int",
"replicaTimeout": "int",
"scheduleTriggerConfig": {
"cronExpression": "string",
"parallelism": "int",
"replicaCompletionCount": "int"
},
"secrets": [
{
"identity": "string",
"keyVaultUrl": "string",
"name": "string",
"value": "string"
}
],
"triggerType": "string"
},
"environmentId": "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"
}
]
}
],
"volumes": [
{
"mountOptions": "string",
"name": "string",
"secrets": [
{
"path": "string",
"secretRef": "string"
}
],
"storageName": "string",
"storageType": "string"
}
]
},
"workloadProfileName": "string"
},
"tags": {
"{customized property}": "string"
}
}
속성 값
컨테이너
이름 | 묘사 | 값 |
---|---|---|
인수(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(필수) |
ContainerResources
이름 | 묘사 | 값 |
---|---|---|
cpu(cpu) | 코어의 필수 CPU(예: 0.5) | int |
gpu | GPU 기반 앱의 코어에 필요한 GPU(예: 1.0) | int |
기억 | 필요한 메모리(예: "250Mb") | 문자열 |
EnvironmentVar
이름 | 묘사 | 값 |
---|---|---|
이름 | 환경 변수 이름입니다. | 문자열 |
secretRef | 환경 변수 값을 끌어올 컨테이너 앱 비밀의 이름입니다. | 문자열 |
값 | 비밀이 아닌 환경 변수 값입니다. | 문자열 |
ExtendedLocation
이름 | 묘사 | 값 |
---|---|---|
이름 | 확장된 위치의 이름입니다. | 문자열 |
형 | 확장된 위치의 형식입니다. | 'CustomLocation' |
IdentitySettings
이름 | 묘사 | 값 |
---|---|---|
신원 | 컨테이너 앱에 할당된 사용자 할당 관리 ID의 리소스 ID이거나 시스템 할당 ID에 대한 '시스템'입니다. | string(필수) |
수명 주기 | 관리 ID를 사용할 수 있어야 하는 컨테이너 앱의 수명 주기 단계를 선택하는 데 사용합니다. | 'All' 'Init' 'Main' 'None' |
InitContainer
이름 | 묘사 | 값 |
---|---|---|
인수(args) | 컨테이너 시작 명령 인수입니다. | string[] |
명령 | 컨테이너 시작 명령입니다. | string[] |
환경을 | 컨테이너 환경 변수입니다. | EnvironmentVar[] |
이미지 | 컨테이너 이미지 태그입니다. | 문자열 |
이미지 유형 | 이미지의 형식입니다. 시스템에서 이미지를 관리할 수 있도록 CloudBuild로 설정합니다. 여기서 사용자는 이미지 필드를 통해 이미지를 업데이트할 수 없습니다. 사용자가 제공한 이미지에 대해 ContainerImage로 설정합니다. | 'CloudBuild' 'ContainerImage' |
이름 | 사용자 지정 컨테이너 이름입니다. | 문자열 |
리소스 | 컨테이너 리소스 요구 사항. | containerResources |
volumeMounts | 컨테이너 볼륨 탑재. | VolumeMount[] |
JobConfiguration
이름 | 묘사 | 값 |
---|---|---|
eventTriggerConfig | 이벤트 기반 작업의 구성을 트리거합니다. | JobConfigurationEventTriggerConfig |
identitySettings | 컨테이너 앱 작업에 할당된 관리 ID에 대한 선택적 설정입니다. 여기에 관리 ID를 지정하지 않으면 기본 설정이 사용됩니다. | IdentitySettings[] |
manualTriggerConfig | 단일 실행 작업에 대한 수동 트리거 구성입니다. 속성 replicaCompletionCount 및 병렬 처리는 기본적으로 1로 설정됩니다. | JobConfigurationManualTriggerConfig |
레지스트리 | 컨테이너 앱 작업에서 사용하는 프라이빗 컨테이너 레지스트리 자격 증명 컬렉션 | RegistryCredentials[] |
replicaRetryLimit | 작업에 실패하기 전 최대 재시도 횟수입니다. | int |
replicaTimeout | 복제본을 실행할 수 있는 최대 시간(초)입니다. | int(필수) |
scheduleTriggerConfig | cron 형식의 반복 트리거 일정("* * * * *")은 cronjobs에 대해 지정되었습니다. 속성 완성 및 병렬 처리는 기본적으로 1로 설정됩니다. | JobConfigurationScheduleTriggerConfig |
비밀 | Container Apps 작업에서 사용하는 비밀 컬렉션 | 비밀[] |
triggerType | 작업 트리거 유형 | 'Event' '수동' 'Schedule'(필수) |
JobConfigurationEventTriggerConfig
이름 | 묘사 | 값 |
---|---|---|
평행도 | 지정된 시간에 실행할 수 있는 작업의 병렬 복제본 수입니다. | int |
replicaCompletionCount | 전체 작업을 완료하기 전에 복제본 완료에 성공한 최소 수입니다. | int |
저울 | 이벤트 기반 작업에 대한 구성 크기 조정 | JobScale |
JobConfigurationManualTriggerConfig
이름 | 묘사 | 값 |
---|---|---|
평행도 | 지정된 시간에 실행할 수 있는 작업의 병렬 복제본 수입니다. | int |
replicaCompletionCount | 전체 작업을 완료하기 전에 복제본 완료에 성공한 최소 수입니다. | int |
JobConfigurationScheduleTriggerConfig
이름 | 묘사 | 값 |
---|---|---|
cronExpression | Cron 작업의 반복 일정("* * * * *")을 지정했습니다. | string(필수) |
평행도 | 지정된 시간에 실행할 수 있는 작업의 병렬 복제본 수입니다. | int |
replicaCompletionCount | 전체 작업을 완료하기 전에 복제본 완료에 성공한 최소 수입니다. | int |
JobProperties
이름 | 묘사 | 값 |
---|---|---|
구성 | Container Apps 작업 구성 속성입니다. | JobConfiguration |
environmentId | 환경의 리소스 ID입니다. | 문자열 |
템플렛 | Container Apps 작업 정의입니다. | JobTemplate |
workloadProfileName | 컨테이너 앱 작업 실행을 위해 고정할 워크로드 프로필 이름입니다. | 문자열 |
작업 크기 조정
이름 | 묘사 | 값 |
---|---|---|
maxExecutions | 트리거에 대해 생성된 최대 작업 실행 수(기본값: 100)입니다. | int |
minExecutions | 트리거에 대해 만들어진 최소 작업 실행 수, 기본값 0 | int |
pollingInterval | 각 이벤트 원본을 확인하는 간격(초)입니다. 기본값: 30대 | int |
규칙 | 규칙 크기 조정 | JobScaleRule[] |
JobScaleRule
이름 | 묘사 | 값 |
---|---|---|
인증 | 크기 조정 규칙에 대한 인증 비밀입니다. | ScaleRuleAuth[] |
신원 | 작업에 할당된 사용자 할당 관리 ID의 리소스 ID이거나 시스템 할당 ID에 대한 '시스템'입니다. | 문자열 |
메타데이터 | 크기 조정 규칙을 설명하는 메타데이터 속성입니다. | 어떤 |
이름 | 크기 조정 규칙 이름 | 문자열 |
형 | 배율 규칙의 형식 예: azure-servicebus, redis 등 |
문자열 |
JobTemplate
이름 | 묘사 | 값 |
---|---|---|
컨테이너 | 컨테이너 앱에 대한 컨테이너 정의 목록입니다. | 컨테이너[] |
initContainers | 앱 컨테이너 앞에서 실행되는 특수 컨테이너 목록입니다. | InitContainer[] |
볼륨 | 컨테이너 앱에 대한 볼륨 정의 목록입니다. | 볼륨[] |
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/jobs
이름 | 묘사 | 값 |
---|---|---|
apiVersion | api 버전 | '2024-10-02-preview' |
extendedLocation | 확장된 위치의 복합 형식입니다. | ExtendedLocation |
신원 | 코드에서 비밀 또는 자격 증명을 유지 관리하지 않기 위해 컨테이너 앱 작업에서 다른 Azure 서비스와 상호 작용하는 데 필요한 관리 ID입니다. | ManagedServiceIdentity |
위치 | 리소스가 있는 지리적 위치 | string(필수) |
이름 | 리소스 이름 | 문자열 제약 조건: 패턴 = ^[-\w\._\(\)]+$ (필수) |
속성 | Container Apps 작업 리소스 관련 속성입니다. | JobProperties |
태그 | 리소스 태그 | 태그 이름 및 값의 사전입니다. 템플릿 |
형 | 리소스 종류 | 'Microsoft.App/jobs' |
RegistryCredentials
이름 | 묘사 | 값 |
---|---|---|
신원 | Azure Container Registry로 인증하는 데 사용할 관리 ID입니다. 사용자 할당 ID의 경우 전체 사용자 할당 ID 리소스 ID를 사용합니다. 시스템 할당 ID의 경우 'system'을 사용합니다. | 문자열 |
passwordSecretRef | 레지스트리 로그인 암호를 포함하는 비밀의 이름입니다. | 문자열 |
서버 | Container Registry Server | 문자열 |
사용자 이름 | Container Registry 사용자 이름 | 문자열 |
ScaleRuleAuth
이름 | 묘사 | 값 |
---|---|---|
secretRef | 인증 매개 변수를 끌어올 비밀의 이름입니다. | 문자열 |
triggerParameter | 비밀을 사용하는 트리거 매개 변수 | 문자열 |
비밀
이름 | 묘사 | 값 |
---|---|---|
신원 | Azure Key Vault로 인증할 관리 ID의 리소스 ID 또는 시스템 할당 ID를 사용하는 시스템입니다. | 문자열 |
keyVaultUrl | 컨테이너 앱에서 참조하는 비밀을 가리키는 Azure Key Vault URL입니다. | 문자열 |
이름 | 비밀 이름입니다. | 문자열 |
값 | 비밀 값입니다. | 문자열 제약 조건: 중요한 값입니다. 보안 매개 변수로 전달합니다. |
SecretVolumeItem
이름 | 묘사 | 값 |
---|---|---|
길 | 프로젝트 비밀에 대한 경로입니다. 경로가 제공되지 않은 경우 경로는 기본적으로 secretRef에 나열된 비밀의 이름으로 설정됩니다. | 문자열 |
secretRef | 비밀 값을 끌어올 컨테이너 앱 비밀의 이름입니다. | 문자열 |
TrackedResourceTags
이름 | 묘사 | 값 |
---|
UserAssignedIdentities
이름 | 묘사 | 값 |
---|
UserAssignedIdentity
이름 | 묘사 | 값 |
---|
음량
이름 | 묘사 | 값 |
---|---|---|
mountOptions | Azure 파일 공유 또는 NFS Azure 파일 공유를 탑재하는 동안 사용되는 탑재 옵션입니다. 쉼표로 구분된 문자열이어야 합니다. | 문자열 |
이름 | 볼륨 이름입니다. | 문자열 |
비밀 | 볼륨에 추가할 비밀 목록입니다. 비밀이 제공되지 않으면 컬렉션의 모든 비밀이 볼륨에 추가됩니다. | SecretVolumeItem[] |
storageName | 스토리지 리소스의 이름입니다. EmptyDir 및 Secret을 제공할 필요가 없습니다. | 문자열 |
storageType | 볼륨의 스토리지 유형입니다. 제공되지 않은 경우 EmptyDir을 사용합니다. | 'AzureFile' 'EmptyDir' 'NfsAzureFile' '비밀' 'Smb' |
VolumeMount
이름 | 묘사 | 값 |
---|---|---|
mountPath | 볼륨을 탑재해야 하는 컨테이너 내의 경로입니다. ':'을 포함하지 않아야 합니다. | 문자열 |
subPath | 컨테이너 볼륨을 탑재해야 하는 볼륨 내의 경로입니다. 기본값은 ""(볼륨의 루트)입니다. | 문자열 |
volumeName | 볼륨의 이름과 일치해야 합니다. | 문자열 |
Terraform(AzAPI 공급자) 리소스 정의
작업 리소스 종류는 다음을 대상으로 하는 작업과 함께 배포할 수 있습니다.
- 리소스 그룹
각 API 버전에서 변경된 속성 목록은 변경 로그참조하세요.
리소스 형식
Microsoft.App/jobs 리소스를 만들려면 템플릿에 다음 Terraform을 추가합니다.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.App/jobs@2024-10-02-preview"
name = "string"
identity = {
type = "string"
userAssignedIdentities = {
{customized property} = {
}
}
}
location = "string"
tags = {
{customized property} = "string"
}
body = jsonencode({
extendedLocation = {
name = "string"
type = "string"
}
properties = {
configuration = {
eventTriggerConfig = {
parallelism = int
replicaCompletionCount = int
scale = {
maxExecutions = int
minExecutions = int
pollingInterval = int
rules = [
{
auth = [
{
secretRef = "string"
triggerParameter = "string"
}
]
identity = "string"
metadata = ?
name = "string"
type = "string"
}
]
}
}
identitySettings = [
{
identity = "string"
lifecycle = "string"
}
]
manualTriggerConfig = {
parallelism = int
replicaCompletionCount = int
}
registries = [
{
identity = "string"
passwordSecretRef = "string"
server = "string"
username = "string"
}
]
replicaRetryLimit = int
replicaTimeout = int
scheduleTriggerConfig = {
cronExpression = "string"
parallelism = int
replicaCompletionCount = int
}
secrets = [
{
identity = "string"
keyVaultUrl = "string"
name = "string"
value = "string"
}
]
triggerType = "string"
}
environmentId = "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"
}
]
}
]
volumes = [
{
mountOptions = "string"
name = "string"
secrets = [
{
path = "string"
secretRef = "string"
}
]
storageName = "string"
storageType = "string"
}
]
}
workloadProfileName = "string"
}
})
}
속성 값
컨테이너
이름 | 묘사 | 값 |
---|---|---|
인수(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(필수) |
ContainerResources
이름 | 묘사 | 값 |
---|---|---|
cpu(cpu) | 코어의 필수 CPU(예: 0.5) | int |
gpu | GPU 기반 앱의 코어에 필요한 GPU(예: 1.0) | int |
기억 | 필요한 메모리(예: "250Mb") | 문자열 |
EnvironmentVar
이름 | 묘사 | 값 |
---|---|---|
이름 | 환경 변수 이름입니다. | 문자열 |
secretRef | 환경 변수 값을 끌어올 컨테이너 앱 비밀의 이름입니다. | 문자열 |
값 | 비밀이 아닌 환경 변수 값입니다. | 문자열 |
ExtendedLocation
이름 | 묘사 | 값 |
---|---|---|
이름 | 확장된 위치의 이름입니다. | 문자열 |
형 | 확장된 위치의 형식입니다. | 'CustomLocation' |
IdentitySettings
이름 | 묘사 | 값 |
---|---|---|
신원 | 컨테이너 앱에 할당된 사용자 할당 관리 ID의 리소스 ID이거나 시스템 할당 ID에 대한 '시스템'입니다. | string(필수) |
수명 주기 | 관리 ID를 사용할 수 있어야 하는 컨테이너 앱의 수명 주기 단계를 선택하는 데 사용합니다. | 'All' 'Init' 'Main' 'None' |
InitContainer
이름 | 묘사 | 값 |
---|---|---|
인수(args) | 컨테이너 시작 명령 인수입니다. | string[] |
명령 | 컨테이너 시작 명령입니다. | string[] |
환경을 | 컨테이너 환경 변수입니다. | EnvironmentVar[] |
이미지 | 컨테이너 이미지 태그입니다. | 문자열 |
이미지 유형 | 이미지의 형식입니다. 시스템에서 이미지를 관리할 수 있도록 CloudBuild로 설정합니다. 여기서 사용자는 이미지 필드를 통해 이미지를 업데이트할 수 없습니다. 사용자가 제공한 이미지에 대해 ContainerImage로 설정합니다. | 'CloudBuild' 'ContainerImage' |
이름 | 사용자 지정 컨테이너 이름입니다. | 문자열 |
리소스 | 컨테이너 리소스 요구 사항. | containerResources |
volumeMounts | 컨테이너 볼륨 탑재. | VolumeMount[] |
JobConfiguration
이름 | 묘사 | 값 |
---|---|---|
eventTriggerConfig | 이벤트 기반 작업의 구성을 트리거합니다. | JobConfigurationEventTriggerConfig |
identitySettings | 컨테이너 앱 작업에 할당된 관리 ID에 대한 선택적 설정입니다. 여기에 관리 ID를 지정하지 않으면 기본 설정이 사용됩니다. | IdentitySettings[] |
manualTriggerConfig | 단일 실행 작업에 대한 수동 트리거 구성입니다. 속성 replicaCompletionCount 및 병렬 처리는 기본적으로 1로 설정됩니다. | JobConfigurationManualTriggerConfig |
레지스트리 | 컨테이너 앱 작업에서 사용하는 프라이빗 컨테이너 레지스트리 자격 증명 컬렉션 | RegistryCredentials[] |
replicaRetryLimit | 작업에 실패하기 전 최대 재시도 횟수입니다. | int |
replicaTimeout | 복제본을 실행할 수 있는 최대 시간(초)입니다. | int(필수) |
scheduleTriggerConfig | cron 형식의 반복 트리거 일정("* * * * *")은 cronjobs에 대해 지정되었습니다. 속성 완성 및 병렬 처리는 기본적으로 1로 설정됩니다. | JobConfigurationScheduleTriggerConfig |
비밀 | Container Apps 작업에서 사용하는 비밀 컬렉션 | 비밀[] |
triggerType | 작업 트리거 유형 | 'Event' '수동' 'Schedule'(필수) |
JobConfigurationEventTriggerConfig
이름 | 묘사 | 값 |
---|---|---|
평행도 | 지정된 시간에 실행할 수 있는 작업의 병렬 복제본 수입니다. | int |
replicaCompletionCount | 전체 작업을 완료하기 전에 복제본 완료에 성공한 최소 수입니다. | int |
저울 | 이벤트 기반 작업에 대한 구성 크기 조정 | JobScale |
JobConfigurationManualTriggerConfig
이름 | 묘사 | 값 |
---|---|---|
평행도 | 지정된 시간에 실행할 수 있는 작업의 병렬 복제본 수입니다. | int |
replicaCompletionCount | 전체 작업을 완료하기 전에 복제본 완료에 성공한 최소 수입니다. | int |
JobConfigurationScheduleTriggerConfig
이름 | 묘사 | 값 |
---|---|---|
cronExpression | Cron 작업의 반복 일정("* * * * *")을 지정했습니다. | string(필수) |
평행도 | 지정된 시간에 실행할 수 있는 작업의 병렬 복제본 수입니다. | int |
replicaCompletionCount | 전체 작업을 완료하기 전에 복제본 완료에 성공한 최소 수입니다. | int |
JobProperties
이름 | 묘사 | 값 |
---|---|---|
구성 | Container Apps 작업 구성 속성입니다. | JobConfiguration |
environmentId | 환경의 리소스 ID입니다. | 문자열 |
템플렛 | Container Apps 작업 정의입니다. | JobTemplate |
workloadProfileName | 컨테이너 앱 작업 실행을 위해 고정할 워크로드 프로필 이름입니다. | 문자열 |
작업 크기 조정
이름 | 묘사 | 값 |
---|---|---|
maxExecutions | 트리거에 대해 생성된 최대 작업 실행 수(기본값: 100)입니다. | int |
minExecutions | 트리거에 대해 만들어진 최소 작업 실행 수, 기본값 0 | int |
pollingInterval | 각 이벤트 원본을 확인하는 간격(초)입니다. 기본값: 30대 | int |
규칙 | 규칙 크기 조정 | JobScaleRule[] |
JobScaleRule
이름 | 묘사 | 값 |
---|---|---|
인증 | 크기 조정 규칙에 대한 인증 비밀입니다. | ScaleRuleAuth[] |
신원 | 작업에 할당된 사용자 할당 관리 ID의 리소스 ID이거나 시스템 할당 ID에 대한 '시스템'입니다. | 문자열 |
메타데이터 | 크기 조정 규칙을 설명하는 메타데이터 속성입니다. | 어떤 |
이름 | 크기 조정 규칙 이름 | 문자열 |
형 | 배율 규칙의 형식 예: azure-servicebus, redis 등 |
문자열 |
JobTemplate
이름 | 묘사 | 값 |
---|---|---|
컨테이너 | 컨테이너 앱에 대한 컨테이너 정의 목록입니다. | 컨테이너[] |
initContainers | 앱 컨테이너 앞에서 실행되는 특수 컨테이너 목록입니다. | InitContainer[] |
볼륨 | 컨테이너 앱에 대한 볼륨 정의 목록입니다. | 볼륨[] |
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/jobs
이름 | 묘사 | 값 |
---|---|---|
extendedLocation | 확장된 위치의 복합 형식입니다. | ExtendedLocation |
신원 | 코드에서 비밀 또는 자격 증명을 유지 관리하지 않기 위해 컨테이너 앱 작업에서 다른 Azure 서비스와 상호 작용하는 데 필요한 관리 ID입니다. | ManagedServiceIdentity |
위치 | 리소스가 있는 지리적 위치 | string(필수) |
이름 | 리소스 이름 | 문자열 제약 조건: 패턴 = ^[-\w\._\(\)]+$ (필수) |
속성 | Container Apps 작업 리소스 관련 속성입니다. | JobProperties |
태그 | 리소스 태그 | 태그 이름 및 값의 사전입니다. |
형 | 리소스 종류 | "Microsoft.App/jobs@2024-10-02-preview" |
RegistryCredentials
이름 | 묘사 | 값 |
---|---|---|
신원 | Azure Container Registry로 인증하는 데 사용할 관리 ID입니다. 사용자 할당 ID의 경우 전체 사용자 할당 ID 리소스 ID를 사용합니다. 시스템 할당 ID의 경우 'system'을 사용합니다. | 문자열 |
passwordSecretRef | 레지스트리 로그인 암호를 포함하는 비밀의 이름입니다. | 문자열 |
서버 | Container Registry Server | 문자열 |
사용자 이름 | Container Registry 사용자 이름 | 문자열 |
ScaleRuleAuth
이름 | 묘사 | 값 |
---|---|---|
secretRef | 인증 매개 변수를 끌어올 비밀의 이름입니다. | 문자열 |
triggerParameter | 비밀을 사용하는 트리거 매개 변수 | 문자열 |
비밀
이름 | 묘사 | 값 |
---|---|---|
신원 | Azure Key Vault로 인증할 관리 ID의 리소스 ID 또는 시스템 할당 ID를 사용하는 시스템입니다. | 문자열 |
keyVaultUrl | 컨테이너 앱에서 참조하는 비밀을 가리키는 Azure Key Vault URL입니다. | 문자열 |
이름 | 비밀 이름입니다. | 문자열 |
값 | 비밀 값입니다. | 문자열 제약 조건: 중요한 값입니다. 보안 매개 변수로 전달합니다. |
SecretVolumeItem
이름 | 묘사 | 값 |
---|---|---|
길 | 프로젝트 비밀에 대한 경로입니다. 경로가 제공되지 않은 경우 경로는 기본적으로 secretRef에 나열된 비밀의 이름으로 설정됩니다. | 문자열 |
secretRef | 비밀 값을 끌어올 컨테이너 앱 비밀의 이름입니다. | 문자열 |
TrackedResourceTags
이름 | 묘사 | 값 |
---|
UserAssignedIdentities
이름 | 묘사 | 값 |
---|
UserAssignedIdentity
이름 | 묘사 | 값 |
---|
음량
이름 | 묘사 | 값 |
---|---|---|
mountOptions | Azure 파일 공유 또는 NFS Azure 파일 공유를 탑재하는 동안 사용되는 탑재 옵션입니다. 쉼표로 구분된 문자열이어야 합니다. | 문자열 |
이름 | 볼륨 이름입니다. | 문자열 |
비밀 | 볼륨에 추가할 비밀 목록입니다. 비밀이 제공되지 않으면 컬렉션의 모든 비밀이 볼륨에 추가됩니다. | SecretVolumeItem[] |
storageName | 스토리지 리소스의 이름입니다. EmptyDir 및 Secret을 제공할 필요가 없습니다. | 문자열 |
storageType | 볼륨의 스토리지 유형입니다. 제공되지 않은 경우 EmptyDir을 사용합니다. | 'AzureFile' 'EmptyDir' 'NfsAzureFile' '비밀' 'Smb' |
VolumeMount
이름 | 묘사 | 값 |
---|---|---|
mountPath | 볼륨을 탑재해야 하는 컨테이너 내의 경로입니다. ':'을 포함하지 않아야 합니다. | 문자열 |
subPath | 컨테이너 볼륨을 탑재해야 하는 볼륨 내의 경로입니다. 기본값은 ""(볼륨의 루트)입니다. | 문자열 |
volumeName | 볼륨의 이름과 일치해야 합니다. | 문자열 |