Microsoft.ContainerInstance containerGroups
Bicep 리소스 정의
containerGroups 리소스 종류는 다음을 대상으로 하는 작업으로 배포할 수 있습니다.
- 리소스 그룹 - 리소스 그룹 배포 명령을 참조하세요.
각 API 버전에서 변경된 속성 목록은 변경 로그를 참조하세요.
리소스 형식
Microsoft.ContainerInstance/containerGroups 리소스를 만들려면 템플릿에 다음 Bicep을 추가합니다.
resource symbolicname 'Microsoft.ContainerInstance/containerGroups@2023-05-01' = {
name: 'string'
location: 'string'
tags: {
tagName1: 'tagValue1'
tagName2: 'tagValue2'
}
identity: {
type: 'string'
userAssignedIdentities: {}
}
properties: {
confidentialComputeProperties: {
ccePolicy: 'string'
}
containers: [
{
name: 'string'
properties: {
command: [
'string'
]
environmentVariables: [
{
name: 'string'
secureValue: 'string'
value: 'string'
}
]
image: 'string'
livenessProbe: {
exec: {
command: [
'string'
]
}
failureThreshold: int
httpGet: {
httpHeaders: [
{
name: 'string'
value: 'string'
}
]
path: 'string'
port: int
scheme: 'string'
}
initialDelaySeconds: int
periodSeconds: int
successThreshold: int
timeoutSeconds: int
}
ports: [
{
port: int
protocol: 'string'
}
]
readinessProbe: {
exec: {
command: [
'string'
]
}
failureThreshold: int
httpGet: {
httpHeaders: [
{
name: 'string'
value: 'string'
}
]
path: 'string'
port: int
scheme: 'string'
}
initialDelaySeconds: int
periodSeconds: int
successThreshold: int
timeoutSeconds: int
}
resources: {
limits: {
cpu: int
gpu: {
count: int
sku: 'string'
}
memoryInGB: json('decimal-as-string')
}
requests: {
cpu: int
gpu: {
count: int
sku: 'string'
}
memoryInGB: json('decimal-as-string')
}
}
securityContext: {
allowPrivilegeEscalation: bool
capabilities: {
add: [
'string'
]
drop: [
'string'
]
}
privileged: bool
runAsGroup: int
runAsUser: int
seccompProfile: 'string'
}
volumeMounts: [
{
mountPath: 'string'
name: 'string'
readOnly: bool
}
]
}
}
]
diagnostics: {
logAnalytics: {
logType: 'string'
metadata: {}
workspaceId: 'string'
workspaceKey: 'string'
workspaceResourceId: 'string'
}
}
dnsConfig: {
nameServers: [
'string'
]
options: 'string'
searchDomains: 'string'
}
encryptionProperties: {
identity: 'string'
keyName: 'string'
keyVersion: 'string'
vaultBaseUrl: 'string'
}
extensions: [
{
name: 'string'
properties: {
extensionType: 'string'
protectedSettings: any()
settings: any()
version: 'string'
}
}
]
imageRegistryCredentials: [
{
identity: 'string'
identityUrl: 'string'
password: 'string'
server: 'string'
username: 'string'
}
]
initContainers: [
{
name: 'string'
properties: {
command: [
'string'
]
environmentVariables: [
{
name: 'string'
secureValue: 'string'
value: 'string'
}
]
image: 'string'
securityContext: {
allowPrivilegeEscalation: bool
capabilities: {
add: [
'string'
]
drop: [
'string'
]
}
privileged: bool
runAsGroup: int
runAsUser: int
seccompProfile: 'string'
}
volumeMounts: [
{
mountPath: 'string'
name: 'string'
readOnly: bool
}
]
}
}
]
ipAddress: {
autoGeneratedDomainNameLabelScope: 'string'
dnsNameLabel: 'string'
ip: 'string'
ports: [
{
port: int
protocol: 'string'
}
]
type: 'string'
}
osType: 'string'
priority: 'string'
restartPolicy: 'string'
sku: 'string'
subnetIds: [
{
id: 'string'
name: 'string'
}
]
volumes: [
{
azureFile: {
readOnly: bool
shareName: 'string'
storageAccountKey: 'string'
storageAccountName: 'string'
}
emptyDir: any()
gitRepo: {
directory: 'string'
repository: 'string'
revision: 'string'
}
name: 'string'
secret: {}
}
]
}
zones: [
'string'
]
}
속성 값
containerGroups
Name | Description | 값 |
---|---|---|
name | 리소스 이름 | string(필수) 문자 제한: 1-63 유효한 문자: 소문자, 숫자 및 하이픈 하이픈으로 시작하거나 끝날 수 없습니다. 연속 하이픈은 허용되지 않습니다. |
위치 | 리소스 위치입니다. | 문자열 |
tags | 리소스 태그입니다. | 태그 이름 및 값의 사전입니다. 템플릿의 태그를 참조하세요. |
identity | 구성된 경우 컨테이너 그룹 ID입니다. | ContainerGroupIdentity |
properties | 컨테이너 그룹 속성 | ContainerGroupPropertiesProperties (필수) |
영역 | 컨테이너 그룹의 영역입니다. | string[] |
ContainerGroupIdentity
Name | Description | 값 |
---|---|---|
형식 | 컨테이너 그룹에 사용되는 ID 유형입니다. ‘SystemAssigned, UserAssigned’ 유형에는 암시적으로 만들어진 ID와 사용자 할당 ID 세트가 모두 포함되어 있습니다. ‘None’ 유형은 컨테이너 그룹에서 모든 ID를 제거합니다. | 'None' 'SystemAssigned' 'SystemAssigned, UserAssigned' 'UserAssigned' |
userAssignedIdentities | 컨테이너 그룹과 연결된 사용자 ID 목록입니다. | object |
ContainerGroupPropertiesProperties
Name | Description | 값 |
---|---|---|
confidentialComputeProperties | 기밀 컨테이너 그룹의 속성 | ConfidentialComputeProperties |
컨테이너 | 컨테이너 그룹 내 컨테이너입니다. | Container[] (필수) |
진단 | 컨테이너 그룹에 대한 진단 정보입니다. | ContainerGroupDiagnostics |
dnsConfig | 컨테이너 그룹에 대한 DNS 구성 정보입니다. | DnsConfiguration |
encryptionProperties | 컨테이너 그룹의 암호화 속성입니다. | EncryptionProperties |
확장 | 가상 kubelet에서 사용하는 확장 | DeploymentExtensionSpec[] |
imageRegistryCredentials | 컨테이너 그룹을 만드는 데 사용할 이미지 레지스트리 자격 증명입니다. | ImageRegistryCredential[] |
initContainers | 컨테이너 그룹의 init 컨테이너입니다. | InitContainerDefinition[] |
ipAddress | 컨테이너 그룹의 IP 주소 유형입니다. | IpAddress |
osType | 컨테이너 그룹의 컨테이너에 필요한 운영 체제 유형입니다. | 'Linux' 'Windows'(필수) |
priority | 컨테이너 그룹의 우선 순위입니다. | 'Regular' 'Spot' |
restartPolicy | 컨테이너 그룹 내 모든 컨테이너에 대한 다시 시작 정책입니다. - Always 항상 다시 시작- OnFailure 실패 시 다시 시작- Never 다시 시작 안 하세요. |
'Always' 'Never' 'OnFailure' |
sku | 컨테이너 그룹에 대한 SKU입니다. | '기밀' '전용' '표준' |
subnetIds | 컨테이너 그룹에 대한 서브넷 리소스 ID입니다. | ContainerGroupSubnetId[] |
volumes | 이 컨테이너 그룹의 컨테이너에서 탑재할 수 있는 볼륨의 목록입니다. | 볼륨[] |
ConfidentialComputeProperties
Name | Description | 값 |
---|---|---|
ccePolicy | base64로 인코딩된 기밀 컴퓨팅 적용 정책 | 문자열 |
컨테이너
Name | Description | 값 |
---|---|---|
name | 컨테이너 인스턴스의 사용자 제공 이름입니다. | string(필수) |
properties | 컨테이너 인스턴스 속성입니다. | ContainerProperties (필수) |
ContainerProperties
Name | Description | 값 |
---|---|---|
명령을 사용합니다. | 실행 형식으로 된 컨테이너 인스턴스 내 실행 명령입니다. | string[] |
environmentVariables | 컨테이너 인스턴스에서 설정할 환경 변수입니다. | EnvironmentVariable[] |
이미지 | 컨테이너 인스턴스를 만드는 데 사용되는 이미지의 이름입니다. | string(필수) |
livenessProbe | 활동성 프로브입니다. | ContainerProbe |
ports | 컨테이너 인스턴스에서 노출되는 포트입니다. | ContainerPort[] |
readinessProbe | 준비 상태 프로브입니다. | ContainerProbe |
리소스 | 컨테이너 인스턴스의 리소스 요구 사항입니다. | ResourceRequirements (필수) |
securityContext | 컨테이너 보안 속성입니다. | SecurityContextDefinition |
volumeMounts | 컨테이너 인스턴스에 사용할 수 있는 볼륨 탑재입니다. | VolumeMount[] |
EnvironmentVariable
Name | Description | 값 |
---|---|---|
name | 환경 변수의 이름입니다. | string(필수) |
secureValue | 보안 환경 변수 값입니다. | 문자열 |
값 | 환경 변수의 값입니다. | 문자열 |
ContainerProbe
Name | Description | 값 |
---|---|---|
exec | 프로브할 실행 명령 | ContainerExec |
failureThreshold | 실패 임계값입니다. | int |
httpGet | 검색할 Http 가져오기 설정 | ContainerHttpGet |
initialDelaySeconds | 초기 지연(초)입니다. | int |
periodSeconds | 기간(초)입니다. | int |
successThreshold | 성공 임계값입니다. | int |
timeoutSeconds | 시간 제한(초)입니다. | int |
ContainerExec
Name | Description | 값 |
---|---|---|
명령을 사용합니다. | 컨테이너 내 실행 명령입니다. | string[] |
ContainerHttpGet
Name | Description | 값 |
---|---|---|
httpHeaders | HTTP 헤더입니다. | HttpHeader[] |
path | 검색할 경로입니다. | 문자열 |
포트 | 검색할 포트 번호입니다. | int(필수) |
scheme | 체계입니다. | 'http' 'https' |
HttpHeader
Name | Description | 값 |
---|---|---|
name | 헤더 이름입니다. | 문자열 |
값 | 헤더 값입니다. | string |
ContainerPort
Name | Description | 값 |
---|---|---|
포트 | 컨테이너 그룹 내에서 노출되는 포트 번호입니다. | int(필수) |
protocol | 포트와 연결된 프로토콜입니다. | 'TCP' 'UDP' |
ResourceRequirements
Name | Description | 값 |
---|---|---|
제한 | 이 컨테이너 인스턴스의 리소스 한도입니다. | ResourceLimits |
requests | 이 컨테이너 인스턴스의 리소스 요청입니다. | ResourceRequests (필수) |
ResourceLimits
Name | Description | 값 |
---|---|---|
cpu | 이 컨테이너 인스턴스의 CPU 한도입니다. | int |
gpu | 이 컨테이너 인스턴스의 GPU 한도입니다. | GpuResource |
memoryInGB | 이 컨테이너 인스턴스의 메모리 한도(GB)입니다. 10진수 값을 지정하려면 json() 함수를 사용합니다. | int 또는 json decimal |
GpuResource
Name | Description | 값 |
---|---|---|
count | GPU 리소스 수입니다. | int(필수) |
sku | GPU 리소스 SKU입니다. | 'K80' 'P100' 'V100'(필수) |
ResourceRequests
Name | Description | 값 |
---|---|---|
cpu | 이 컨테이너 인스턴스의 CPU 요청입니다. | int(필수) |
gpu | 이 컨테이너 인스턴스의 GPU 요청입니다. | GpuResource |
memoryInGB | 이 컨테이너 인스턴스의 메모리 요청(GB)입니다. 10진수 값을 지정하려면 json() 함수를 사용합니다. | int 또는 json decimal(필수) |
SecurityContextDefinition
Name | Description | 값 |
---|---|---|
allowPrivilegeEscalation | init 프로세스가 권한을 상승시킬 수 있는지 여부를 나타내는 부울 값입니다. | bool |
capabilities | 컨테이너에서 추가하거나 삭제하는 기능입니다. | SecurityContextCapabilitiesDefinition |
권한 | 컨테이너 권한이 Privileged로 승격되었는지 확인하는 플래그입니다. | bool |
runAsGroup | 컨테이너에 대한 사용자 GID를 설정합니다. | int |
runAsUser | 컨테이너에 대한 사용자 UID를 설정합니다. | int |
seccompProfile | seccomp 프로필에서 JSON의 내용을 포함하는 base64로 인코딩된 문자열 | 문자열 |
SecurityContextCapabilitiesDefinition
Name | Description | 값 |
---|---|---|
add | 컨테이너에 추가할 기능입니다. | string[] |
drop | 컨테이너에서 삭제할 기능입니다. | string[] |
VolumeMount
Name | Description | 값 |
---|---|---|
mountPath | 볼륨이 탑재되어야 하는 컨테이너 내 경로입니다. 콜론(:)은 포함되면 안 됩니다. | string(필수) |
name | 볼륨 탑재의 이름입니다. | string(필수) |
readOnly | 볼륨 탑재가 읽기 전용인지 여부를 나타내는 플래그입니다. | bool |
ContainerGroupDiagnostics
Name | Description | 값 |
---|---|---|
logAnalytics | 컨테이너 그룹 로그 분석 정보입니다. | LogAnalytics |
LogAnalytics
Name | Description | 값 |
---|---|---|
logType | 사용할 로그 유형입니다. | 'ContainerInsights' 'ContainerInstanceLogs' |
metadata | 로그 분석에 대한 메타데이터입니다. | object |
workspaceId | 로그 분석에 대한 작업 영역 ID입니다. | string(필수) |
workspaceKey | 로그 분석에 대한 작업 영역 키입니다. | string(필수) |
workspaceResourceId | 로그 분석의 작업 영역 리소스 ID | 문자열 |
DnsConfiguration
Name | Description | 값 |
---|---|---|
nameServers | 컨테이너 그룹에 대한 DNS 서버입니다. | string[] (필수) |
옵션 | 컨테이너 그룹에 대한 DNS 옵션입니다. | string |
searchDomains | 컨테이너 그룹의 호스트 이름 조회에 대한 DNS 검색 도메인입니다. | 문자열 |
EncryptionProperties
Name | Description | 값 |
---|---|---|
identity | keyvault 관리 ID입니다. | 문자열 |
keyName | 암호화 키 이름입니다. | string(필수) |
keyVersion | 암호화 키 버전입니다. | string(필수) |
vaultBaseUrl | keyvault 기준 URL입니다. | string(필수) |
DeploymentExtensionSpec
Name | Description | 값 |
---|---|---|
name | 확장의 이름입니다. | string(필수) |
properties | 확장별 속성 | DeploymentExtensionSpecProperties |
DeploymentExtensionSpecProperties
Name | Description | 값 |
---|---|---|
extensionType | 추가할 확장의 유형입니다. | string(필수) |
protectedSettings | 확장에 대한 보호된 설정입니다. | Bicep의 경우 any() 함수를 사용할 수 있습니다. |
설정 | 확장에 대한 설정입니다. | Bicep의 경우 any() 함수를 사용할 수 있습니다. |
버전 | 사용 중인 확장의 버전입니다. | string(필수) |
ImageRegistryCredential
Name | Description | 값 |
---|---|---|
identity | 프라이빗 레지스트리의 ID입니다. | 문자열 |
identityUrl | 프라이빗 레지스트리의 ID URL입니다. | 문자열 |
password | 프라이빗 레지스트리의 암호입니다. | string |
서버 | “http” 및 “https” 같은 프로토콜이 없는 Docker 이미지 레지스트리 서버입니다. | string(필수) |
사용자 이름 | 프라이빗 레지스트리의 사용자 이름입니다. | 문자열 |
InitContainerDefinition
Name | Description | 값 |
---|---|---|
name | init 컨테이너의 이름입니다. | string(필수) |
properties | init 컨테이너의 속성입니다. | InitContainerPropertiesDefinition (필수) |
InitContainerPropertiesDefinition
Name | Description | 값 |
---|---|---|
명령을 사용합니다. | 실행 형식으로 된 init 컨테이너 내 실행 명령입니다. | string[] |
environmentVariables | init 컨테이너에서 설정할 환경 변수입니다. | EnvironmentVariable[] |
이미지 | init 컨테이너의 이미지입니다. | 문자열 |
securityContext | 컨테이너 보안 속성입니다. | SecurityContextDefinition |
volumeMounts | init 컨테이너에 사용할 수 있는 볼륨 탑재입니다. | VolumeMount[] |
IpAddress
Name | Description | 값 |
---|---|---|
autoGeneratedDomainNameLabelScope | 보안 열거형을 나타내는 값입니다. 'Unsecure' 값은 선택하지 않은 경우 기본값이며 개체의 도메인 이름 레이블이 하위 도메인 인수에 대해 보호되지 않음을 의미합니다. 'TenantReuse' 값은 선택한 경우 기본값이며 개체의 도메인 이름 레이블을 동일한 테넌트 내에서 다시 사용할 수 있다는 것을 의미합니다. 'SubscriptionReuse' 값은 개체의 도메인 이름 레이블을 동일한 구독 내에서 다시 사용할 수 있습니다. 'ResourceGroupReuse' 값은 개체의 도메인 이름 레이블을 동일한 리소스 그룹 내에서 다시 사용할 수 있습니다. 'NoReuse' 값은 개체의 도메인 이름 레이블을 동일한 리소스 그룹, 구독 또는 테넌트 내에서 다시 사용할 수 없음을 의미합니다. | 'Noreuse' 'ResourceGroupReuse' 'SubscriptionReuse' 'TenantReuse' '안전하지 않음' |
dnsNameLabel | IP에 대한 DNS 이름 레이블입니다. | 문자열 |
ip | 공용 인터넷에 노출되는 IP입니다. | 문자열 |
ports | 컨테이너 그룹에서 노출되는 포트 목록입니다. | 포트[] (필수) |
형식 | IP가 공용 인터넷 또는 개인 VNET에 노출되는지 여부를 지정합니다. | 'Private' 'Public'(필수) |
포트
Name | Description | 값 |
---|---|---|
포트 | 포트 번호. | int(필수) |
protocol | 포트와 연결된 프로토콜입니다. | 'TCP' 'UDP' |
ContainerGroupSubnetId
Name | Description | 값 |
---|---|---|
id | 가상 네트워크 및 서브넷의 리소스 ID입니다. | string(필수) |
name | 서브넷의 이름입니다. | string |
볼륨
Name | Description | 값 |
---|---|---|
azureFile | Azure 파일 볼륨입니다. | AzureFileVolume |
emptyDir | 빈 디렉터리 볼륨입니다. | Bicep의 경우 any() 함수를 사용할 수 있습니다. |
gitRepo | Git 리포지토리 볼륨입니다. | GitRepoVolume |
name | 볼륨의 이름입니다. | string(필수) |
secret | 비밀 볼륨입니다. | object |
AzureFileVolume
Name | Description | 값 |
---|---|---|
readOnly | 볼륨으로 탑재된 Azure 파일 공유가 읽기 전용인지 여부를 나타내는 플래그입니다. | bool |
shareName | 볼륨으로 탑재할 Azure 파일 공유의 이름입니다. | string(필수) |
storageAccountKey | Azure 파일 공유에 액세스하는 데 사용되는 스토리지 계정 액세스 키입니다. | 문자열 |
storageAccountName | Azure 파일 공유가 포함된 스토리지 계정의 이름입니다. | string(필수) |
GitRepoVolume
Name | Description | 값 |
---|---|---|
directory | 대상 디렉터리 이름입니다. ‘..’를 포함하거나 ‘..’로 시작해서는 안 됩니다. ‘.’가 제공되면 볼륨 디렉터리가 git 리포지토리가 됩니다. 그렇지 않고 지정되면 볼륨에는 지정된 이름의 하위 디렉터리에 git 리포지토리가 포함됩니다. | string |
리포지토리 | 리포지토리 URL | string(필수) |
수정 | 지정된 수정 버전에 대한 해시를 커밋합니다. | string |
빠른 시작 템플릿
다음 빠른 시작 템플릿은 이 리소스 유형을 배포합니다.
템플릿 | Description |
---|---|
AKS에서 가용성 그룹 SQL Server |
그러면 새 AKS 클러스터가 만들어지고 더플 및 ACI를 사용하여 배포된 CNAB 패키지를 사용하여 SQL Server 가용성 그룹을 배포합니다. |
WordPress 사이트 만들기 |
이 템플릿은 Container Instance에 WordPress 사이트를 만듭니다. |
가상 네트워크에서 WordPress 사이트 만들기 |
이 템플릿은 가상 네트워크의 Container Instance에 WordPress 사이트를 만듭니다. WordPress 사이트에 액세스할 수 있는 공용 사이트 FQDN을 출력합니다. |
Azure Container Instances - bc with SQL Server 및 IIS |
Azure Container Instances 완전한 기능을 갖춘 Microsoft Dynamics 365 Business Central 환경을 사용하여 단일 Windows 컨테이너를 배포합니다. |
Container Instances 및 Application Gateway 있는 Front Door |
이 템플릿은 컨테이너 그룹 및 Application Gateway 사용하여 Front Door 표준/프리미엄을 만듭니다. |
front Door Standard/Premium(Azure Container Instances 사용) |
이 템플릿은 컨테이너 그룹을 사용하여 Front Door 표준/프리미엄을 만듭니다. |
Azure Container Instances - 상태 프로브가 있는 컨테이너 |
Azure Container Instances 사용하여 상태 프로브가 있는 Linux 컨테이너를 배포합니다. |
Azure Container Instances - 공용 IP가 있는 Linux 컨테이너 |
Azure Container Instances 사용하여 공용 IP를 통해 액세스할 수 있는 단일 Linux 컨테이너를 배포합니다. |
Azure Container Instances - 보안 envVar이 있는 컨테이너 |
Azure Container Instances 사용하여 보안 환경 변수가 있는 Linux 컨테이너를 배포합니다. |
Azure Container Instances - emptyDir이 있는 Linux 컨테이너 |
Azure Container Instances 사용하여 emptyDir 볼륨을 공유하는 두 개의 Linux 컨테이너를 배포합니다. |
Azure Container Instances - gitRepo를 사용한 Linux 컨테이너 |
Azure Container Instances 사용하여 gitRepo 볼륨을 사용하는 Linux 컨테이너를 배포합니다. |
Azure Container Instances - 비밀이 있는 컨테이너 |
Azure Container Instances 사용하여 비밀 볼륨이 있는 Linux 컨테이너를 배포합니다. |
영구 스토리지를 사용하여 주문형 SFTP 서버 만들기 |
이 템플릿은 ACI(Azure Container Instance)를 사용하는 주문형 SFTP 서버를 보여 줍니다. |
기존 스토리지 계정을 사용하는 주문형 SFTP 서버 |
이 템플릿은 ACI(Azure Container Instance)를 사용하는 주문형 SFTP 서버를 보여 줍니다. |
컨테이너를 통해 스토리지 계정 파일 공유 만들기 |
이 템플릿은 Container Instance에서 azure-cli를 통해 스토리지 계정 및 파일 공유를 만듭니다. |
ACI의 UDP 컨테이너 |
이 템플릿은 ACI 리소스를 만들고 UDP를 통해 컨테이너를 노출합니다. |
Azure Container Instances - VNet |
Azure 가상 네트워크에 컨테이너 instance 배포합니다. |
인증서를 사용하여 Application Gateway 만들기 |
이 템플릿은 자체 서명된 인증서를 Key Vault 생성한 다음 Application Gateway 참조하는 방법을 보여 줍니다. |
ARM 템플릿 리소스 정의
containerGroups 리소스 종류는 다음을 대상으로 하는 작업으로 배포할 수 있습니다.
- 리소스 그룹 - 리소스 그룹 배포 명령 참조
각 API 버전에서 변경된 속성 목록은 변경 로그를 참조하세요.
리소스 형식
Microsoft.ContainerInstance/containerGroups 리소스를 만들려면 템플릿에 다음 JSON을 추가합니다.
{
"type": "Microsoft.ContainerInstance/containerGroups",
"apiVersion": "2023-05-01",
"name": "string",
"location": "string",
"tags": {
"tagName1": "tagValue1",
"tagName2": "tagValue2"
},
"identity": {
"type": "string",
"userAssignedIdentities": {}
},
"properties": {
"confidentialComputeProperties": {
"ccePolicy": "string"
},
"containers": [
{
"name": "string",
"properties": {
"command": [ "string" ],
"environmentVariables": [
{
"name": "string",
"secureValue": "string",
"value": "string"
}
],
"image": "string",
"livenessProbe": {
"exec": {
"command": [ "string" ]
},
"failureThreshold": "int",
"httpGet": {
"httpHeaders": [
{
"name": "string",
"value": "string"
}
],
"path": "string",
"port": "int",
"scheme": "string"
},
"initialDelaySeconds": "int",
"periodSeconds": "int",
"successThreshold": "int",
"timeoutSeconds": "int"
},
"ports": [
{
"port": "int",
"protocol": "string"
}
],
"readinessProbe": {
"exec": {
"command": [ "string" ]
},
"failureThreshold": "int",
"httpGet": {
"httpHeaders": [
{
"name": "string",
"value": "string"
}
],
"path": "string",
"port": "int",
"scheme": "string"
},
"initialDelaySeconds": "int",
"periodSeconds": "int",
"successThreshold": "int",
"timeoutSeconds": "int"
},
"resources": {
"limits": {
"cpu": "int",
"gpu": {
"count": "int",
"sku": "string"
},
"memoryInGB": "[json('decimal-as-string')]"
},
"requests": {
"cpu": "int",
"gpu": {
"count": "int",
"sku": "string"
},
"memoryInGB": "[json('decimal-as-string')]"
}
},
"securityContext": {
"allowPrivilegeEscalation": "bool",
"capabilities": {
"add": [ "string" ],
"drop": [ "string" ]
},
"privileged": "bool",
"runAsGroup": "int",
"runAsUser": "int",
"seccompProfile": "string"
},
"volumeMounts": [
{
"mountPath": "string",
"name": "string",
"readOnly": "bool"
}
]
}
}
],
"diagnostics": {
"logAnalytics": {
"logType": "string",
"metadata": {},
"workspaceId": "string",
"workspaceKey": "string",
"workspaceResourceId": "string"
}
},
"dnsConfig": {
"nameServers": [ "string" ],
"options": "string",
"searchDomains": "string"
},
"encryptionProperties": {
"identity": "string",
"keyName": "string",
"keyVersion": "string",
"vaultBaseUrl": "string"
},
"extensions": [
{
"name": "string",
"properties": {
"extensionType": "string",
"protectedSettings": {},
"settings": {},
"version": "string"
}
}
],
"imageRegistryCredentials": [
{
"identity": "string",
"identityUrl": "string",
"password": "string",
"server": "string",
"username": "string"
}
],
"initContainers": [
{
"name": "string",
"properties": {
"command": [ "string" ],
"environmentVariables": [
{
"name": "string",
"secureValue": "string",
"value": "string"
}
],
"image": "string",
"securityContext": {
"allowPrivilegeEscalation": "bool",
"capabilities": {
"add": [ "string" ],
"drop": [ "string" ]
},
"privileged": "bool",
"runAsGroup": "int",
"runAsUser": "int",
"seccompProfile": "string"
},
"volumeMounts": [
{
"mountPath": "string",
"name": "string",
"readOnly": "bool"
}
]
}
}
],
"ipAddress": {
"autoGeneratedDomainNameLabelScope": "string",
"dnsNameLabel": "string",
"ip": "string",
"ports": [
{
"port": "int",
"protocol": "string"
}
],
"type": "string"
},
"osType": "string",
"priority": "string",
"restartPolicy": "string",
"sku": "string",
"subnetIds": [
{
"id": "string",
"name": "string"
}
],
"volumes": [
{
"azureFile": {
"readOnly": "bool",
"shareName": "string",
"storageAccountKey": "string",
"storageAccountName": "string"
},
"emptyDir": {},
"gitRepo": {
"directory": "string",
"repository": "string",
"revision": "string"
},
"name": "string",
"secret": {}
}
]
},
"zones": [ "string" ]
}
속성 값
containerGroups
Name | Description | 값 |
---|---|---|
형식 | 리소스 종류 | 'Microsoft.ContainerInstance/containerGroups' |
apiVersion | 리소스 api 버전 | '2023-05-01' |
name | 리소스 이름 | string(필수) 문자 제한: 1-63 유효한 문자: 소문자, 숫자 및 하이픈 하이픈으로 시작하거나 끝날 수 없습니다. 연속 하이픈은 허용되지 않습니다. |
위치 | 리소스 위치입니다. | 문자열 |
tags | 리소스 태그입니다. | 태그 이름 및 값의 사전입니다. 템플릿의 태그를 참조하세요. |
identity | 구성된 경우 컨테이너 그룹 ID입니다. | ContainerGroupIdentity |
properties | 컨테이너 그룹 속성 | ContainerGroupPropertiesProperties (필수) |
영역 | 컨테이너 그룹의 영역입니다. | string[] |
ContainerGroupIdentity
Name | Description | 값 |
---|---|---|
형식 | 컨테이너 그룹에 사용되는 ID 유형입니다. ‘SystemAssigned, UserAssigned’ 유형에는 암시적으로 만들어진 ID와 사용자 할당 ID 세트가 모두 포함되어 있습니다. ‘None’ 유형은 컨테이너 그룹에서 모든 ID를 제거합니다. | 'None' 'SystemAssigned' 'SystemAssigned, UserAssigned' 'UserAssigned' |
userAssignedIdentities | 컨테이너 그룹과 연결된 사용자 ID 목록입니다. | object |
ContainerGroupProperties속성
Name | Description | 값 |
---|---|---|
confidentialComputeProperties | 기밀 컨테이너 그룹의 속성 | ConfidentialComputeProperties |
컨테이너 | 컨테이너 그룹 내 컨테이너입니다. | Container[] (필수) |
진단 | 컨테이너 그룹에 대한 진단 정보입니다. | ContainerGroupDiagnostics |
dnsConfig | 컨테이너 그룹에 대한 DNS 구성 정보입니다. | DnsConfiguration |
encryptionProperties | 컨테이너 그룹의 암호화 속성입니다. | EncryptionProperties |
확장 | 가상 kubelet에서 사용하는 확장 | DeploymentExtensionSpec[] |
imageRegistryCredentials | 컨테이너 그룹을 만드는 데 사용할 이미지 레지스트리 자격 증명입니다. | ImageRegistryCredential[] |
initContainers | 컨테이너 그룹의 init 컨테이너입니다. | InitContainerDefinition[] |
ipAddress | 컨테이너 그룹의 IP 주소 유형입니다. | IpAddress |
osType | 컨테이너 그룹의 컨테이너에 필요한 운영 체제 유형입니다. | 'Linux' 'Windows'(필수) |
priority | 컨테이너 그룹의 우선 순위입니다. | 'Regular' 'Spot' |
restartPolicy | 컨테이너 그룹 내 모든 컨테이너에 대한 다시 시작 정책입니다. - Always 항상 다시 시작- OnFailure 실패 시 다시 시작- Never 다시 시작 안 하세요. |
'Always' 'Never' 'OnFailure' |
sku | 컨테이너 그룹에 대한 SKU입니다. | '기밀' '전용' '표준' |
subnetIds | 컨테이너 그룹에 대한 서브넷 리소스 ID입니다. | ContainerGroupSubnetId[] |
volumes | 이 컨테이너 그룹의 컨테이너에서 탑재할 수 있는 볼륨의 목록입니다. | 볼륨[] |
ConfidentialComputeProperties
Name | Description | 값 |
---|---|---|
ccePolicy | base64로 인코딩된 기밀 컴퓨팅 적용 정책 | string |
컨테이너
Name | Description | 값 |
---|---|---|
name | 컨테이너 인스턴스의 사용자 제공 이름입니다. | string(필수) |
properties | 컨테이너 인스턴스 속성입니다. | ContainerProperties (필수) |
ContainerProperties
Name | Description | 값 |
---|---|---|
명령을 사용합니다. | 실행 형식으로 된 컨테이너 인스턴스 내 실행 명령입니다. | string[] |
environmentVariables | 컨테이너 인스턴스에서 설정할 환경 변수입니다. | EnvironmentVariable[] |
이미지 | 컨테이너 인스턴스를 만드는 데 사용되는 이미지의 이름입니다. | string(필수) |
livenessProbe | 활동성 프로브입니다. | ContainerProbe |
ports | 컨테이너 인스턴스에서 노출되는 포트입니다. | ContainerPort[] |
readinessProbe | 준비 상태 프로브입니다. | ContainerProbe |
리소스 | 컨테이너 인스턴스의 리소스 요구 사항입니다. | ResourceRequirements (필수) |
securityContext | 컨테이너 보안 속성입니다. | SecurityContextDefinition |
volumeMounts | 컨테이너 인스턴스에 사용할 수 있는 볼륨 탑재입니다. | VolumeMount[] |
EnvironmentVariable
Name | Description | 값 |
---|---|---|
name | 환경 변수의 이름입니다. | string(필수) |
secureValue | 보안 환경 변수 값입니다. | 문자열 |
값 | 환경 변수의 값입니다. | 문자열 |
ContainerProbe
Name | Description | 값 |
---|---|---|
exec | 검색할 실행 명령 | ContainerExec |
failureThreshold | 실패 임계값입니다. | int |
httpGet | 검색할 Http 가져오기 설정 | ContainerHttpGet |
initialDelaySeconds | 초기 지연(초)입니다. | int |
periodSeconds | 기간(초)입니다. | int |
successThreshold | 성공 임계값입니다. | int |
timeoutSeconds | 시간 제한(초)입니다. | int |
ContainerExec
Name | Description | 값 |
---|---|---|
명령을 사용합니다. | 컨테이너 내 실행 명령입니다. | string[] |
ContainerHttpGet
Name | Description | 값 |
---|---|---|
httpHeaders | HTTP 헤더입니다. | HttpHeader[] |
path | 검색할 경로입니다. | 문자열 |
포트 | 검색할 포트 번호입니다. | int(필수) |
scheme | 체계입니다. | 'http' 'https' |
HttpHeader
Name | Description | 값 |
---|---|---|
name | 헤더 이름입니다. | 문자열 |
값 | 헤더 값입니다. | 문자열 |
ContainerPort
Name | Description | 값 |
---|---|---|
포트 | 컨테이너 그룹 내에서 노출되는 포트 번호입니다. | int(필수) |
protocol | 포트와 연결된 프로토콜입니다. | 'TCP' 'UDP' |
ResourceRequirements
Name | Description | 값 |
---|---|---|
제한 | 이 컨테이너 인스턴스의 리소스 한도입니다. | ResourceLimits |
requests | 이 컨테이너 인스턴스의 리소스 요청입니다. | ResourceRequests (필수) |
ResourceLimits
Name | Description | 값 |
---|---|---|
cpu | 이 컨테이너 인스턴스의 CPU 한도입니다. | int |
gpu | 이 컨테이너 인스턴스의 GPU 한도입니다. | GpuResource |
memoryInGB | 이 컨테이너 인스턴스의 메모리 한도(GB)입니다. 10진수 값을 지정하려면 json() 함수를 사용합니다. | int 또는 json decimal |
GpuResource
Name | Description | 값 |
---|---|---|
count | GPU 리소스 수입니다. | int(필수) |
sku | GPU 리소스 SKU입니다. | 'K80' 'P100' 'V100'(필수) |
ResourceRequests
Name | Description | 값 |
---|---|---|
cpu | 이 컨테이너 인스턴스의 CPU 요청입니다. | int(필수) |
gpu | 이 컨테이너 인스턴스의 GPU 요청입니다. | GpuResource |
memoryInGB | 이 컨테이너 인스턴스의 메모리 요청(GB)입니다. 10진수 값을 지정하려면 json() 함수를 사용합니다. | int 또는 json decimal(필수) |
SecurityContextDefinition
Name | Description | 값 |
---|---|---|
allowPrivilegeEscalation | init 프로세스가 권한을 상승시킬 수 있는지 여부를 나타내는 부울 값입니다. | bool |
capabilities | 컨테이너에서 추가하거나 삭제하는 기능입니다. | SecurityContextCapabilitiesDefinition |
권한 | 컨테이너 권한이 Privileged로 상승되었는지 확인하는 플래그입니다. | bool |
runAsGroup | 컨테이너에 대한 사용자 GID를 설정합니다. | int |
runAsUser | 컨테이너에 대한 사용자 UID를 설정합니다. | int |
seccompProfile | seccomp 프로필에서 JSON의 내용을 포함하는 base64로 인코딩된 문자열 | 문자열 |
SecurityContextCapabilitiesDefinition
Name | Description | 값 |
---|---|---|
add | 컨테이너에 추가할 기능입니다. | string[] |
drop | 컨테이너에서 삭제할 기능입니다. | string[] |
VolumeMount
Name | Description | 값 |
---|---|---|
mountPath | 볼륨이 탑재되어야 하는 컨테이너 내 경로입니다. 콜론(:)은 포함되면 안 됩니다. | string(필수) |
name | 볼륨 탑재의 이름입니다. | string(필수) |
readOnly | 볼륨 탑재가 읽기 전용인지 여부를 나타내는 플래그입니다. | bool |
ContainerGroupDiagnostics
Name | Description | 값 |
---|---|---|
logAnalytics | 컨테이너 그룹 로그 분석 정보입니다. | LogAnalytics |
LogAnalytics
Name | Description | 값 |
---|---|---|
logType | 사용할 로그 유형입니다. | 'ContainerInsights' 'ContainerInstanceLogs' |
metadata | 로그 분석에 대한 메타데이터입니다. | object |
workspaceId | 로그 분석에 대한 작업 영역 ID입니다. | string(필수) |
workspaceKey | 로그 분석에 대한 작업 영역 키입니다. | string(필수) |
workspaceResourceId | 로그 분석의 작업 영역 리소스 ID | 문자열 |
DnsConfiguration
Name | Description | 값 |
---|---|---|
nameServers | 컨테이너 그룹에 대한 DNS 서버입니다. | string[] (필수) |
옵션 | 컨테이너 그룹에 대한 DNS 옵션입니다. | 문자열 |
searchDomains | 컨테이너 그룹의 호스트 이름 조회에 대한 DNS 검색 도메인입니다. | 문자열 |
EncryptionProperties
Name | Description | 값 |
---|---|---|
identity | keyvault 관리 ID입니다. | string |
keyName | 암호화 키 이름입니다. | string(필수) |
keyVersion | 암호화 키 버전입니다. | string(필수) |
vaultBaseUrl | keyvault 기준 URL입니다. | string(필수) |
DeploymentExtensionSpec
Name | Description | 값 |
---|---|---|
name | 확장의 이름입니다. | string(필수) |
properties | 확장별 속성 | DeploymentExtensionSpecProperties |
DeploymentExtensionSpecProperties
Name | Description | 값 |
---|---|---|
extensionType | 추가할 확장 유형입니다. | string(필수) |
protectedSettings | 확장에 대한 보호된 설정입니다. | |
설정 | 확장에 대한 설정입니다. | |
버전 | 사용 중인 확장의 버전입니다. | string(필수) |
ImageRegistryCredential
Name | Description | 값 |
---|---|---|
identity | 프라이빗 레지스트리의 ID입니다. | 문자열 |
identityUrl | 프라이빗 레지스트리의 ID URL입니다. | 문자열 |
password | 프라이빗 레지스트리의 암호입니다. | string |
서버 | “http” 및 “https” 같은 프로토콜이 없는 Docker 이미지 레지스트리 서버입니다. | string(필수) |
사용자 이름 | 프라이빗 레지스트리의 사용자 이름입니다. | 문자열 |
InitContainerDefinition
Name | Description | 값 |
---|---|---|
name | init 컨테이너의 이름입니다. | string(필수) |
properties | init 컨테이너의 속성입니다. | InitContainerPropertiesDefinition (필수) |
InitContainerPropertiesDefinition
Name | Description | 값 |
---|---|---|
명령을 사용합니다. | 실행 형식으로 된 init 컨테이너 내 실행 명령입니다. | string[] |
environmentVariables | init 컨테이너에서 설정할 환경 변수입니다. | EnvironmentVariable[] |
이미지 | init 컨테이너의 이미지입니다. | 문자열 |
securityContext | 컨테이너 보안 속성입니다. | SecurityContextDefinition |
volumeMounts | init 컨테이너에 사용할 수 있는 볼륨 탑재입니다. | VolumeMount[] |
IpAddress
Name | Description | 값 |
---|---|---|
autoGeneratedDomainNameLabelScope | 보안 열거형을 나타내는 값입니다. 'Unsecure' 값은 선택하지 않은 경우 기본값이며 개체의 도메인 이름 레이블이 하위 도메인 인수에 대해 보호되지 않음을 의미합니다. 'TenantReuse' 값은 선택한 경우 기본값이며 개체의 도메인 이름 레이블을 동일한 테넌트 내에서 다시 사용할 수 있다는 것을 의미합니다. 'SubscriptionReuse' 값은 개체의 도메인 이름 레이블을 동일한 구독 내에서 다시 사용할 수 있습니다. 'ResourceGroupReuse' 값은 개체의 도메인 이름 레이블을 동일한 리소스 그룹 내에서 다시 사용할 수 있습니다. 'NoReuse' 값은 개체의 도메인 이름 레이블을 동일한 리소스 그룹, 구독 또는 테넌트 내에서 다시 사용할 수 없음을 의미합니다. | 'Noreuse' 'ResourceGroupReuse' 'SubscriptionReuse' 'TenantReuse' '안전하지 않음' |
dnsNameLabel | IP에 대한 DNS 이름 레이블입니다. | 문자열 |
ip | 공용 인터넷에 노출되는 IP입니다. | string |
ports | 컨테이너 그룹에서 노출되는 포트 목록입니다. | Port[] (필수) |
형식 | IP가 공용 인터넷 또는 개인 VNET에 노출되는지 여부를 지정합니다. | 'Private' 'Public'(필수) |
포트
Name | Description | 값 |
---|---|---|
포트 | 포트 번호. | int(필수) |
protocol | 포트와 연결된 프로토콜입니다. | 'TCP' 'UDP' |
ContainerGroupSubnetId
Name | Description | 값 |
---|---|---|
id | 가상 네트워크 및 서브넷의 리소스 ID입니다. | string(필수) |
name | 서브넷의 이름입니다. | string |
볼륨
Name | Description | 값 |
---|---|---|
azureFile | Azure 파일 볼륨입니다. | AzureFileVolume |
emptyDir | 빈 디렉터리 볼륨입니다. | |
gitRepo | Git 리포지토리 볼륨입니다. | GitRepoVolume |
name | 볼륨의 이름입니다. | string(필수) |
secret | 비밀 볼륨입니다. | object |
AzureFileVolume
Name | Description | 값 |
---|---|---|
readOnly | 볼륨으로 탑재된 Azure 파일 공유가 읽기 전용인지 여부를 나타내는 플래그입니다. | bool |
shareName | 볼륨으로 탑재할 Azure 파일 공유의 이름입니다. | string(필수) |
storageAccountKey | Azure 파일 공유에 액세스하는 데 사용되는 스토리지 계정 액세스 키입니다. | 문자열 |
storageAccountName | Azure 파일 공유가 포함된 스토리지 계정의 이름입니다. | string(필수) |
GitRepoVolume
Name | Description | 값 |
---|---|---|
directory | 대상 디렉터리 이름입니다. ‘..’를 포함하거나 ‘..’로 시작해서는 안 됩니다. ‘.’가 제공되면 볼륨 디렉터리가 git 리포지토리가 됩니다. 그렇지 않고 지정되면 볼륨에는 지정된 이름의 하위 디렉터리에 git 리포지토리가 포함됩니다. | string |
리포지토리 | 리포지토리 URL | string(필수) |
수정 | 지정된 수정 버전에 대한 해시를 커밋합니다. | 문자열 |
빠른 시작 템플릿
다음 빠른 시작 템플릿은 이 리소스 종류를 배포합니다.
템플릿 | Description |
---|---|
AKS에서 가용성 그룹 SQL Server |
그러면 새 AKS 클러스터가 만들어지고 더플 및 ACI를 사용하여 배포된 CNAB 패키지를 사용하여 SQL Server 가용성 그룹을 배포합니다. |
WordPress 사이트 만들기 |
이 템플릿은 Container Instance에 WordPress 사이트를 만듭니다. |
가상 네트워크에서 WordPress 사이트 만들기 |
이 템플릿은 가상 네트워크의 Container Instance에 WordPress 사이트를 만듭니다. WordPress 사이트에 액세스할 수 있는 공용 사이트 FQDN을 출력합니다. |
Azure Container Instances - SQL SERVER 및 IIS를 사용하는 BC |
Azure Container Instances 완전한 기능을 갖춘 자체 포함된 Microsoft Dynamics 365 Business Central 환경을 사용하여 단일 Windows 컨테이너를 배포합니다. |
Container Instances 및 Application Gateway 있는 Front Door |
이 템플릿은 컨테이너 그룹을 사용하여 Front Door 표준/프리미엄을 만들고 Application Gateway. |
Front Door 표준/프리미엄(Azure Container Instances 사용) |
이 템플릿은 컨테이너 그룹을 사용하여 Front Door 표준/프리미엄을 만듭니다. |
Azure Container Instances - 상태 프로브가 있는 컨테이너 |
Azure Container Instances 사용하여 상태 프로브가 있는 Linux 컨테이너를 배포합니다. |
Azure Container Instances - 공용 IP가 있는 Linux 컨테이너 |
Azure Container Instances 사용하여 공용 IP를 통해 액세스할 수 있는 단일 Linux 컨테이너를 배포합니다. |
Azure Container Instances - 보안 envVar이 있는 컨테이너 |
Azure Container Instances 사용하여 보안 환경 변수가 있는 Linux 컨테이너를 배포합니다. |
Azure Container Instances - emptyDir을 사용한 Linux 컨테이너 |
Azure Container Instances 사용하여 emptyDir 볼륨을 공유하는 두 개의 Linux 컨테이너를 배포합니다. |
Azure Container Instances - gitRepo를 사용한 Linux 컨테이너 |
Azure Container Instances 사용하여 gitRepo 볼륨을 사용하는 Linux 컨테이너를 배포합니다. |
Azure Container Instances - 비밀이 있는 컨테이너 |
Azure Container Instances 사용하여 비밀 볼륨이 있는 Linux 컨테이너를 배포합니다. |
영구 스토리지를 사용하여 주문형 SFTP 서버 만들기 |
이 템플릿은 ACI(Azure Container Instance)를 사용하는 주문형 SFTP 서버를 보여 줍니다. |
기존 스토리지 계정을 사용하는 주문형 SFTP 서버 |
이 템플릿은 ACI(Azure Container Instance)를 사용하는 주문형 SFTP 서버를 보여 줍니다. |
컨테이너를 통해 스토리지 계정 파일 공유 만들기 |
이 템플릿은 Container Instance에서 azure-cli를 통해 스토리지 계정 및 파일 공유를 만듭니다. |
ACI의 UDP 컨테이너 |
이 템플릿은 ACI 리소스를 만들고 UDP를 통해 컨테이너를 노출합니다. |
Azure Container Instances - VNet |
Azure 가상 네트워크에 컨테이너 instance 배포합니다. |
인증서를 사용하여 Application Gateway 만들기 |
이 템플릿은 자체 서명된 인증서를 Key Vault 생성한 다음 Application Gateway 참조하는 방법을 보여 줍니다. |
Terraform(AzAPI 공급자) 리소스 정의
containerGroups 리소스 종류는 다음을 대상으로 하는 작업으로 배포할 수 있습니다.
- 리소스 그룹
각 API 버전에서 변경된 속성 목록은 변경 로그를 참조하세요.
리소스 형식
Microsoft.ContainerInstance/containerGroups 리소스를 만들려면 템플릿에 다음 Terraform을 추가합니다.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.ContainerInstance/containerGroups@2023-05-01"
name = "string"
location = "string"
parent_id = "string"
tags = {
tagName1 = "tagValue1"
tagName2 = "tagValue2"
}
identity {
type = "string"
identity_ids = []
}
body = jsonencode({
properties = {
confidentialComputeProperties = {
ccePolicy = "string"
}
containers = [
{
name = "string"
properties = {
command = [
"string"
]
environmentVariables = [
{
name = "string"
secureValue = "string"
value = "string"
}
]
image = "string"
livenessProbe = {
exec = {
command = [
"string"
]
}
failureThreshold = int
httpGet = {
httpHeaders = [
{
name = "string"
value = "string"
}
]
path = "string"
port = int
scheme = "string"
}
initialDelaySeconds = int
periodSeconds = int
successThreshold = int
timeoutSeconds = int
}
ports = [
{
port = int
protocol = "string"
}
]
readinessProbe = {
exec = {
command = [
"string"
]
}
failureThreshold = int
httpGet = {
httpHeaders = [
{
name = "string"
value = "string"
}
]
path = "string"
port = int
scheme = "string"
}
initialDelaySeconds = int
periodSeconds = int
successThreshold = int
timeoutSeconds = int
}
resources = {
limits = {
cpu = int
gpu = {
count = int
sku = "string"
}
memoryInGB = "decimal-as-string"
}
requests = {
cpu = int
gpu = {
count = int
sku = "string"
}
memoryInGB = "decimal-as-string"
}
}
securityContext = {
allowPrivilegeEscalation = bool
capabilities = {
add = [
"string"
]
drop = [
"string"
]
}
privileged = bool
runAsGroup = int
runAsUser = int
seccompProfile = "string"
}
volumeMounts = [
{
mountPath = "string"
name = "string"
readOnly = bool
}
]
}
}
]
diagnostics = {
logAnalytics = {
logType = "string"
metadata = {}
workspaceId = "string"
workspaceKey = "string"
workspaceResourceId = "string"
}
}
dnsConfig = {
nameServers = [
"string"
]
options = "string"
searchDomains = "string"
}
encryptionProperties = {
identity = "string"
keyName = "string"
keyVersion = "string"
vaultBaseUrl = "string"
}
extensions = [
{
name = "string"
properties = {
extensionType = "string"
version = "string"
}
}
]
imageRegistryCredentials = [
{
identity = "string"
identityUrl = "string"
password = "string"
server = "string"
username = "string"
}
]
initContainers = [
{
name = "string"
properties = {
command = [
"string"
]
environmentVariables = [
{
name = "string"
secureValue = "string"
value = "string"
}
]
image = "string"
securityContext = {
allowPrivilegeEscalation = bool
capabilities = {
add = [
"string"
]
drop = [
"string"
]
}
privileged = bool
runAsGroup = int
runAsUser = int
seccompProfile = "string"
}
volumeMounts = [
{
mountPath = "string"
name = "string"
readOnly = bool
}
]
}
}
]
ipAddress = {
autoGeneratedDomainNameLabelScope = "string"
dnsNameLabel = "string"
ip = "string"
ports = [
{
port = int
protocol = "string"
}
]
type = "string"
}
osType = "string"
priority = "string"
restartPolicy = "string"
sku = "string"
subnetIds = [
{
id = "string"
name = "string"
}
]
volumes = [
{
azureFile = {
readOnly = bool
shareName = "string"
storageAccountKey = "string"
storageAccountName = "string"
}
gitRepo = {
directory = "string"
repository = "string"
revision = "string"
}
name = "string"
secret = {}
}
]
}
zones = [
"string"
]
})
}
속성 값
containerGroups
Name | Description | 값 |
---|---|---|
형식 | 리소스 종류 | "Microsoft.ContainerInstance/containerGroups@2023-05-01" |
name | 리소스 이름 | string(필수) 문자 제한: 1-63 유효한 문자: 소문자, 숫자 및 하이픈 하이픈으로 시작하거나 끝날 수 없습니다. 연속 하이픈은 허용되지 않습니다. |
위치 | 리소스 위치입니다. | 문자열 |
parent_id | 리소스 그룹에 배포하려면 해당 리소스 그룹의 ID를 사용합니다. | string(필수) |
tags | 리소스 태그입니다. | 태그 이름 및 값의 사전입니다. |
identity | 구성된 경우 컨테이너 그룹 ID입니다. | ContainerGroupIdentity |
properties | 컨테이너 그룹 속성 | ContainerGroupPropertiesProperties (필수) |
영역 | 컨테이너 그룹의 영역입니다. | string[] |
ContainerGroupIdentity
Name | Description | 값 |
---|---|---|
형식 | 컨테이너 그룹에 사용되는 ID 유형입니다. ‘SystemAssigned, UserAssigned’ 유형에는 암시적으로 만들어진 ID와 사용자 할당 ID 세트가 모두 포함되어 있습니다. ‘None’ 유형은 컨테이너 그룹에서 모든 ID를 제거합니다. | "SystemAssigned" "SystemAssigned, UserAssigned" "UserAssigned" |
identity_ids | 컨테이너 그룹과 연결된 사용자 ID 목록입니다. | 사용자 ID ID의 배열입니다. |
ContainerGroupPropertiesProperties
Name | Description | 값 |
---|---|---|
confidentialComputeProperties | 기밀 컨테이너 그룹의 속성 | ConfidentialComputeProperties |
컨테이너 | 컨테이너 그룹 내 컨테이너입니다. | Container[] (필수) |
진단 | 컨테이너 그룹에 대한 진단 정보입니다. | ContainerGroupDiagnostics |
dnsConfig | 컨테이너 그룹에 대한 DNS 구성 정보입니다. | DnsConfiguration |
encryptionProperties | 컨테이너 그룹의 암호화 속성입니다. | EncryptionProperties |
확장 | 가상 kubelet에서 사용하는 확장 | DeploymentExtensionSpec[] |
imageRegistryCredentials | 컨테이너 그룹을 만드는 데 사용할 이미지 레지스트리 자격 증명입니다. | ImageRegistryCredential[] |
initContainers | 컨테이너 그룹의 init 컨테이너입니다. | InitContainerDefinition[] |
ipAddress | 컨테이너 그룹의 IP 주소 유형입니다. | IpAddress |
osType | 컨테이너 그룹의 컨테이너에 필요한 운영 체제 유형입니다. | "Linux" "Windows"(필수) |
priority | 컨테이너 그룹의 우선 순위입니다. | "일반" "Spot" |
restartPolicy | 컨테이너 그룹 내 모든 컨테이너에 대한 다시 시작 정책입니다. - Always 항상 다시 시작- OnFailure 실패 시 다시 시작- Never 다시 시작 안 하세요. |
"항상" "안 함" "OnFailure" |
sku | 컨테이너 그룹에 대한 SKU입니다. | "기밀" "전용" "표준" |
subnetIds | 컨테이너 그룹에 대한 서브넷 리소스 ID입니다. | ContainerGroupSubnetId[] |
volumes | 이 컨테이너 그룹의 컨테이너에서 탑재할 수 있는 볼륨의 목록입니다. | Volume[] |
ConfidentialComputeProperties
Name | Description | 값 |
---|---|---|
ccePolicy | base64로 인코딩된 기밀 컴퓨팅 적용 정책 | string |
컨테이너
Name | Description | 값 |
---|---|---|
name | 컨테이너 인스턴스의 사용자 제공 이름입니다. | string(필수) |
properties | 컨테이너 인스턴스 속성입니다. | ContainerProperties (필수) |
ContainerProperties
Name | Description | 값 |
---|---|---|
명령을 사용합니다. | 실행 형식으로 된 컨테이너 인스턴스 내 실행 명령입니다. | string[] |
environmentVariables | 컨테이너 인스턴스에서 설정할 환경 변수입니다. | EnvironmentVariable[] |
이미지 | 컨테이너 인스턴스를 만드는 데 사용되는 이미지의 이름입니다. | string(필수) |
livenessProbe | 활동성 프로브입니다. | ContainerProbe |
ports | 컨테이너 인스턴스에서 노출되는 포트입니다. | ContainerPort[] |
readinessProbe | 준비 상태 프로브입니다. | ContainerProbe |
리소스 | 컨테이너 인스턴스의 리소스 요구 사항입니다. | ResourceRequirements (필수) |
securityContext | 컨테이너 보안 속성입니다. | SecurityContextDefinition |
volumeMounts | 컨테이너 인스턴스에 사용할 수 있는 볼륨 탑재입니다. | VolumeMount[] |
EnvironmentVariable
Name | Description | 값 |
---|---|---|
name | 환경 변수의 이름입니다. | string(필수) |
secureValue | 보안 환경 변수 값입니다. | 문자열 |
값 | 환경 변수의 값입니다. | string |
ContainerProbe
Name | Description | 값 |
---|---|---|
exec | 프로브할 실행 명령 | ContainerExec |
failureThreshold | 실패 임계값입니다. | int |
httpGet | 검색할 Http 가져오기 설정 | ContainerHttpGet |
initialDelaySeconds | 초기 지연(초)입니다. | int |
periodSeconds | 기간(초)입니다. | int |
successThreshold | 성공 임계값입니다. | int |
timeoutSeconds | 시간 제한(초)입니다. | int |
ContainerExec
Name | Description | 값 |
---|---|---|
명령을 사용합니다. | 컨테이너 내 실행 명령입니다. | string[] |
ContainerHttpGet
Name | Description | 값 |
---|---|---|
httpHeaders | HTTP 헤더입니다. | HttpHeader[] |
path | 검색할 경로입니다. | 문자열 |
포트 | 검색할 포트 번호입니다. | int(필수) |
scheme | 체계입니다. | "http" "https" |
HttpHeader
Name | Description | 값 |
---|---|---|
name | 헤더 이름입니다. | 문자열 |
값 | 헤더 값입니다. | string |
ContainerPort
Name | Description | 값 |
---|---|---|
포트 | 컨테이너 그룹 내에서 노출되는 포트 번호입니다. | int(필수) |
protocol | 포트와 연결된 프로토콜입니다. | "TCP" "UDP" |
ResourceRequirements
Name | Description | 값 |
---|---|---|
제한 | 이 컨테이너 인스턴스의 리소스 한도입니다. | ResourceLimits |
requests | 이 컨테이너 인스턴스의 리소스 요청입니다. | ResourceRequests (필수) |
ResourceLimits
Name | Description | 값 |
---|---|---|
cpu | 이 컨테이너 인스턴스의 CPU 한도입니다. | int |
gpu | 이 컨테이너 인스턴스의 GPU 한도입니다. | GpuResource |
memoryInGB | 이 컨테이너 인스턴스의 메모리 한도(GB)입니다. 10진수 값을 문자열로 지정합니다. | int 또는 json decimal |
GpuResource
Name | Description | 값 |
---|---|---|
count | GPU 리소스 수입니다. | int(필수) |
sku | GPU 리소스 SKU입니다. | "K80" "P100" "V100"(필수) |
ResourceRequests
Name | Description | 값 |
---|---|---|
cpu | 이 컨테이너 인스턴스의 CPU 요청입니다. | int(필수) |
gpu | 이 컨테이너 인스턴스의 GPU 요청입니다. | GpuResource |
memoryInGB | 이 컨테이너 인스턴스의 메모리 요청(GB)입니다. 10진수 값을 문자열로 지정합니다. | int 또는 json decimal(필수) |
SecurityContextDefinition
Name | Description | 값 |
---|---|---|
allowPrivilegeEscalation | init 프로세스가 권한을 상승시킬 수 있는지 여부를 나타내는 부울 값입니다. | bool |
capabilities | 컨테이너에서 추가하거나 삭제하는 기능입니다. | SecurityContextCapabilitiesDefinition |
권한 | 컨테이너 권한이 Privileged로 상승되었는지 확인하는 플래그입니다. | bool |
runAsGroup | 컨테이너에 대한 사용자 GID를 설정합니다. | int |
runAsUser | 컨테이너에 대한 사용자 UID를 설정합니다. | int |
seccompProfile | seccomp 프로필에서 JSON의 내용을 포함하는 base64로 인코딩된 문자열 | string |
SecurityContextCapabilitiesDefinition
Name | Description | 값 |
---|---|---|
add | 컨테이너에 추가할 기능입니다. | string[] |
drop | 컨테이너에서 삭제할 기능입니다. | string[] |
VolumeMount
Name | Description | 값 |
---|---|---|
mountPath | 볼륨이 탑재되어야 하는 컨테이너 내 경로입니다. 콜론(:)은 포함되면 안 됩니다. | string(필수) |
name | 볼륨 탑재의 이름입니다. | string(필수) |
readOnly | 볼륨 탑재가 읽기 전용인지 여부를 나타내는 플래그입니다. | bool |
ContainerGroupDiagnostics
Name | Description | 값 |
---|---|---|
logAnalytics | 컨테이너 그룹 로그 분석 정보입니다. | LogAnalytics |
LogAnalytics
Name | Description | 값 |
---|---|---|
logType | 사용할 로그 유형입니다. | "ContainerInsights" "ContainerInstanceLogs" |
metadata | 로그 분석에 대한 메타데이터입니다. | object |
workspaceId | 로그 분석에 대한 작업 영역 ID입니다. | string(필수) |
workspaceKey | 로그 분석에 대한 작업 영역 키입니다. | string(필수) |
workspaceResourceId | 로그 분석의 작업 영역 리소스 ID | 문자열 |
DnsConfiguration
Name | Description | 값 |
---|---|---|
nameServers | 컨테이너 그룹에 대한 DNS 서버입니다. | string[] (필수) |
옵션 | 컨테이너 그룹에 대한 DNS 옵션입니다. | string |
searchDomains | 컨테이너 그룹의 호스트 이름 조회에 대한 DNS 검색 도메인입니다. | 문자열 |
EncryptionProperties
Name | Description | 값 |
---|---|---|
identity | keyvault 관리 ID입니다. | string |
keyName | 암호화 키 이름입니다. | string(필수) |
keyVersion | 암호화 키 버전입니다. | string(필수) |
vaultBaseUrl | keyvault 기준 URL입니다. | string(필수) |
DeploymentExtensionSpec
Name | Description | 값 |
---|---|---|
name | 확장의 이름입니다. | string(필수) |
properties | 확장별 속성 | DeploymentExtensionSpecProperties |
DeploymentExtensionSpecProperties
Name | Description | 값 |
---|---|---|
extensionType | 추가할 확장의 유형입니다. | string(필수) |
protectedSettings | 확장에 대한 보호된 설정입니다. | |
설정 | 확장에 대한 설정입니다. | |
버전 | 사용 중인 확장의 버전입니다. | string(필수) |
ImageRegistryCredential
Name | Description | 값 |
---|---|---|
identity | 프라이빗 레지스트리의 ID입니다. | 문자열 |
identityUrl | 프라이빗 레지스트리의 ID URL입니다. | string |
password | 프라이빗 레지스트리의 암호입니다. | string |
서버 | “http” 및 “https” 같은 프로토콜이 없는 Docker 이미지 레지스트리 서버입니다. | string(필수) |
사용자 이름 | 프라이빗 레지스트리의 사용자 이름입니다. | 문자열 |
InitContainerDefinition
Name | Description | 값 |
---|---|---|
name | init 컨테이너의 이름입니다. | string(필수) |
properties | init 컨테이너의 속성입니다. | InitContainerPropertiesDefinition (필수) |
InitContainerPropertiesDefinition
Name | Description | 값 |
---|---|---|
명령을 사용합니다. | 실행 형식으로 된 init 컨테이너 내 실행 명령입니다. | string[] |
environmentVariables | init 컨테이너에서 설정할 환경 변수입니다. | EnvironmentVariable[] |
이미지 | init 컨테이너의 이미지입니다. | 문자열 |
securityContext | 컨테이너 보안 속성입니다. | SecurityContextDefinition |
volumeMounts | init 컨테이너에 사용할 수 있는 볼륨 탑재입니다. | VolumeMount[] |
IpAddress
Name | Description | 값 |
---|---|---|
autoGeneratedDomainNameLabelScope | 보안 열거형을 나타내는 값입니다. 'Unsecure' 값은 선택하지 않은 경우 기본값이며 개체의 도메인 이름 레이블이 하위 도메인 인수에 대해 보호되지 않음을 의미합니다. 'TenantReuse' 값은 선택한 경우 기본값이며 개체의 도메인 이름 레이블을 동일한 테넌트 내에서 다시 사용할 수 있다는 것을 의미합니다. 'SubscriptionReuse' 값은 개체의 도메인 이름 레이블을 동일한 구독 내에서 다시 사용할 수 있습니다. 'ResourceGroupReuse' 값은 개체의 도메인 이름 레이블을 동일한 리소스 그룹 내에서 다시 사용할 수 있습니다. 'NoReuse' 값은 개체의 도메인 이름 레이블을 동일한 리소스 그룹, 구독 또는 테넌트 내에서 재사용할 수 없음을 의미합니다. | "Noreuse" "ResourceGroupReuse" "SubscriptionReuse" "TenantReuse" "안전하지 않음" |
dnsNameLabel | IP에 대한 DNS 이름 레이블입니다. | string |
ip | 공용 인터넷에 노출되는 IP입니다. | 문자열 |
ports | 컨테이너 그룹에서 노출되는 포트 목록입니다. | 포트[] (필수) |
형식 | IP가 공용 인터넷 또는 개인 VNET에 노출되는지 여부를 지정합니다. | "Private" "Public"(필수) |
포트
Name | Description | 값 |
---|---|---|
포트 | 포트 번호. | int(필수) |
protocol | 포트와 연결된 프로토콜입니다. | "TCP" "UDP" |
ContainerGroupSubnetId
Name | Description | 값 |
---|---|---|
id | 가상 네트워크 및 서브넷의 리소스 ID입니다. | string(필수) |
name | 서브넷의 이름입니다. | string |
볼륨
Name | Description | 값 |
---|---|---|
azureFile | Azure 파일 볼륨입니다. | AzureFileVolume |
emptyDir | 빈 디렉터리 볼륨입니다. | |
gitRepo | Git 리포지토리 볼륨입니다. | GitRepoVolume |
name | 볼륨의 이름입니다. | string(필수) |
secret | 비밀 볼륨입니다. | object |
AzureFileVolume
Name | Description | 값 |
---|---|---|
readOnly | 볼륨으로 탑재된 Azure 파일 공유가 읽기 전용인지 여부를 나타내는 플래그입니다. | bool |
shareName | 볼륨으로 탑재할 Azure 파일 공유의 이름입니다. | string(필수) |
storageAccountKey | Azure 파일 공유에 액세스하는 데 사용되는 스토리지 계정 액세스 키입니다. | 문자열 |
storageAccountName | Azure 파일 공유가 포함된 스토리지 계정의 이름입니다. | string(필수) |
GitRepoVolume
Name | Description | 값 |
---|---|---|
directory | 대상 디렉터리 이름입니다. ‘..’를 포함하거나 ‘..’로 시작해서는 안 됩니다. ‘.’가 제공되면 볼륨 디렉터리가 git 리포지토리가 됩니다. 그렇지 않고 지정되면 볼륨에는 지정된 이름의 하위 디렉터리에 git 리포지토리가 포함됩니다. | string |
리포지토리 | 리포지토리 URL | string(필수) |
수정 | 지정된 수정 버전에 대한 해시를 커밋합니다. | string |