Microsoft.ContainerInstance containerGroups 2018-10-01

Bicep 리소스 정의

containerGroups 리소스 종류는 다음을 대상으로 하는 작업으로 배포할 수 있습니다.

각 API 버전에서 변경된 속성 목록은 변경 로그를 참조하세요.

리소스 형식

Microsoft.ContainerInstance/containerGroups 리소스를 만들려면 템플릿에 다음 Bicep을 추가합니다.

resource symbolicname 'Microsoft.ContainerInstance/containerGroups@2018-10-01' = {
  name: 'string'
  location: 'string'
  tags: {
    tagName1: 'tagValue1'
    tagName2: 'tagValue2'
  }
  identity: {
    type: 'string'
    userAssignedIdentities: {}
  }
  properties: {
    containers: [
      {
        name: 'string'
        properties: {
          command: [
            'string'
          ]
          environmentVariables: [
            {
              name: 'string'
              secureValue: 'string'
              value: 'string'
            }
          ]
          image: 'string'
          livenessProbe: {
            exec: {
              command: [
                'string'
              ]
            }
            failureThreshold: int
            httpGet: {
              path: 'string'
              port: int
              scheme: 'string'
            }
            initialDelaySeconds: int
            periodSeconds: int
            successThreshold: int
            timeoutSeconds: int
          }
          ports: [
            {
              port: int
              protocol: 'string'
            }
          ]
          readinessProbe: {
            exec: {
              command: [
                'string'
              ]
            }
            failureThreshold: int
            httpGet: {
              path: 'string'
              port: int
              scheme: 'string'
            }
            initialDelaySeconds: int
            periodSeconds: int
            successThreshold: int
            timeoutSeconds: int
          }
          resources: {
            limits: {
              cpu: int
              gpu: {
                count: int
                sku: 'string'
              }
              memoryInGB: json('decimal-as-string')
            }
            requests: {
              cpu: int
              gpu: {
                count: int
                sku: 'string'
              }
              memoryInGB: json('decimal-as-string')
            }
          }
          volumeMounts: [
            {
              mountPath: 'string'
              name: 'string'
              readOnly: bool
            }
          ]
        }
      }
    ]
    diagnostics: {
      logAnalytics: {
        logType: 'string'
        metadata: {}
        workspaceId: 'string'
        workspaceKey: 'string'
      }
    }
    dnsConfig: {
      nameServers: [
        'string'
      ]
      options: 'string'
      searchDomains: 'string'
    }
    imageRegistryCredentials: [
      {
        password: 'string'
        server: 'string'
        username: 'string'
      }
    ]
    ipAddress: {
      dnsNameLabel: 'string'
      ip: 'string'
      ports: [
        {
          port: int
          protocol: 'string'
        }
      ]
      type: 'string'
    }
    networkProfile: {
      id: 'string'
    }
    osType: 'string'
    restartPolicy: 'string'
    volumes: [
      {
        azureFile: {
          readOnly: bool
          shareName: 'string'
          storageAccountKey: 'string'
          storageAccountName: 'string'
        }
        emptyDir: any()
        gitRepo: {
          directory: 'string'
          repository: 'string'
          revision: 'string'
        }
        name: 'string'
        secret: {}
      }
    ]
  }
}

속성 값

containerGroups

Name Description
name 리소스 이름 string(필수)

문자 제한: 1-63

유효한 문자:
소문자, 숫자 및 하이픈

하이픈으로 시작하거나 끝날 수 없습니다. 연속 하이픈은 허용되지 않습니다.
위치 리소스 위치입니다. 문자열
tags 리소스 태그입니다. 태그 이름 및 값의 사전입니다. 템플릿의 태그를 참조하세요.
identity 구성된 경우 컨테이너 그룹 ID입니다. ContainerGroupIdentity
properties ContainerGroupProperties (필수)

ContainerGroupIdentity

Name Description
형식 컨테이너 그룹에 사용되는 ID 유형입니다. ‘SystemAssigned, UserAssigned’ 유형에는 암시적으로 만들어진 ID와 사용자 할당 ID 세트가 모두 포함되어 있습니다. ‘None’ 유형은 컨테이너 그룹에서 모든 ID를 제거합니다. 'None'
'SystemAssigned'
'SystemAssigned, UserAssigned'
'UserAssigned'
userAssignedIdentities 컨테이너 그룹과 연결된 사용자 ID 목록입니다. 사용자 ID 사전 키 참조는 '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}' 형식의 ARM 리소스 ID입니다. object

ContainerGroupProperties

Name Description
컨테이너 컨테이너 그룹 내 컨테이너입니다. Container[] (필수)
진단 컨테이너 그룹에 대한 진단 정보입니다. ContainerGroupDiagnostics
dnsConfig 컨테이너 그룹에 대한 DNS 구성 정보입니다. DnsConfiguration
imageRegistryCredentials 컨테이너 그룹을 만드는 데 사용할 이미지 레지스트리 자격 증명입니다. ImageRegistryCredential[]
ipAddress 컨테이너 그룹의 IP 주소 유형입니다. IpAddress
networkProfile 컨테이너 그룹에 대한 네트워크 프로필 정보입니다. ContainerGroupNetworkProfile
osType 컨테이너 그룹의 컨테이너에 필요한 운영 체제 유형입니다. 'Linux'
'Windows'(필수)
restartPolicy 컨테이너 그룹 내 모든 컨테이너에 대한 다시 시작 정책입니다.
- Always 항상 다시 시작
- OnFailure 실패 시 다시 시작
- Never 다시 시작 안 하세요.
'Always'
'Never'
'OnFailure'
volumes 이 컨테이너 그룹의 컨테이너에서 탑재할 수 있는 볼륨의 목록입니다. Volume[]

컨테이너

Name Description
name 컨테이너 인스턴스의 사용자 제공 이름입니다. string(필수)
properties 컨테이너 인스턴스 속성입니다. ContainerProperties (필수)

ContainerProperties

Name Description
명령을 사용합니다. 실행 형식으로 된 컨테이너 인스턴스 내 실행 명령입니다. string[]
environmentVariables 컨테이너 인스턴스에서 설정할 환경 변수입니다. EnvironmentVariable[]
이미지 컨테이너 인스턴스를 만드는 데 사용되는 이미지의 이름입니다. string(필수)
livenessProbe 활동성 프로브입니다. ContainerProbe
ports 컨테이너 인스턴스에서 노출되는 포트입니다. ContainerPort[]
readinessProbe 준비 상태 프로브입니다. ContainerProbe
리소스 컨테이너 인스턴스의 리소스 요구 사항입니다. ResourceRequirements (필수)
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
path 검색할 경로입니다. 문자열
포트 검색할 포트 번호입니다. int(필수)
scheme 체계입니다. 'http'
'https'

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(필수)

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(필수)

DnsConfiguration

Name Description
nameServers 컨테이너 그룹에 대한 DNS 서버입니다. string[] (필수)
옵션 컨테이너 그룹에 대한 DNS 옵션입니다. 문자열
searchDomains 컨테이너 그룹의 호스트 이름 조회에 대한 DNS 검색 도메인입니다. 문자열

ImageRegistryCredential

Name Description
password 프라이빗 레지스트리의 암호입니다. string
서버 “http” 및 “https” 같은 프로토콜이 없는 Docker 이미지 레지스트리 서버입니다. string(필수)
사용자 이름 프라이빗 레지스트리의 사용자 이름입니다. string(필수)

IpAddress

Name Description
dnsNameLabel IP에 대한 DNS 이름 레이블입니다. 문자열
ip 공용 인터넷에 노출되는 IP입니다. string
ports 컨테이너 그룹에서 노출되는 포트 목록입니다. Port[] (필수)
형식 IP가 공용 인터넷 또는 개인 VNET에 노출되는지 여부를 지정합니다. 'Private'
'Public'(필수)

포트

Name Description
포트 포트 번호. int(필수)
protocol 포트와 연결된 프로토콜입니다. 'TCP'
'UDP'

ContainerGroupNetworkProfile

Name Description
id 네트워크 프로필 식별자입니다. 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

Azure에 배포
그러면 새 AKS 클러스터가 만들어지고 더플 및 ACI를 사용하여 배포된 CNAB 패키지를 사용하여 SQL Server 가용성 그룹을 배포합니다.
WordPress 사이트 만들기

Azure에 배포
이 템플릿은 Container Instance에 WordPress 사이트를 만듭니다.
가상 네트워크에서 WordPress 사이트 만들기

Azure에 배포
이 템플릿은 가상 네트워크의 Container Instance에 WordPress 사이트를 만듭니다. WordPress 사이트에 액세스할 수 있는 공용 사이트 FQDN을 출력합니다.
Azure Container Instances - bc with SQL Server 및 IIS

Azure에 배포
Azure Container Instances 완전한 기능을 갖춘 Microsoft Dynamics 365 Business Central 환경을 사용하여 단일 Windows 컨테이너를 배포합니다.
Container Instances 및 Application Gateway 있는 Front Door

Azure에 배포
이 템플릿은 컨테이너 그룹 및 Application Gateway 사용하여 Front Door 표준/프리미엄을 만듭니다.
front Door Standard/Premium(Azure Container Instances 사용)

Azure에 배포
이 템플릿은 컨테이너 그룹을 사용하여 Front Door 표준/프리미엄을 만듭니다.
Azure Container Instances - 상태 프로브가 있는 컨테이너

Azure에 배포
Azure Container Instances 사용하여 상태 프로브가 있는 Linux 컨테이너를 배포합니다.
Azure Container Instances - 공용 IP가 있는 Linux 컨테이너

Azure에 배포
Azure Container Instances 사용하여 공용 IP를 통해 액세스할 수 있는 단일 Linux 컨테이너를 배포합니다.
Azure Container Instances - 보안 envVar이 있는 컨테이너

Azure에 배포
Azure Container Instances 사용하여 보안 환경 변수가 있는 Linux 컨테이너를 배포합니다.
Azure Container Instances - emptyDir이 있는 Linux 컨테이너

Azure에 배포
Azure Container Instances 사용하여 emptyDir 볼륨을 공유하는 두 개의 Linux 컨테이너를 배포합니다.
Azure Container Instances - gitRepo를 사용한 Linux 컨테이너

Azure에 배포
Azure Container Instances 사용하여 gitRepo 볼륨을 사용하는 Linux 컨테이너를 배포합니다.
Azure Container Instances - 비밀이 있는 컨테이너

Azure에 배포
Azure Container Instances 사용하여 비밀 볼륨이 있는 Linux 컨테이너를 배포합니다.
영구 스토리지를 사용하여 주문형 SFTP 서버 만들기

Azure에 배포
이 템플릿은 ACI(Azure Container Instance)를 사용하는 주문형 SFTP 서버를 보여 줍니다.
기존 스토리지 계정을 사용하는 주문형 SFTP 서버

Azure에 배포
이 템플릿은 ACI(Azure Container Instance)를 사용하는 주문형 SFTP 서버를 보여 줍니다.
컨테이너를 통해 스토리지 계정 파일 공유 만들기

Azure에 배포
이 템플릿은 Container Instance에서 azure-cli를 통해 스토리지 계정 및 파일 공유를 만듭니다.
ACI의 UDP 컨테이너

Azure에 배포
이 템플릿은 ACI 리소스를 만들고 UDP를 통해 컨테이너를 노출합니다.
Azure Container Instances - VNet

Azure에 배포
Azure 가상 네트워크에 컨테이너 instance 배포합니다.
인증서를 사용하여 Application Gateway 만들기

Azure에 배포
이 템플릿은 자체 서명된 인증서를 Key Vault 생성한 다음 Application Gateway 참조하는 방법을 보여 줍니다.

ARM 템플릿 리소스 정의

containerGroups 리소스 종류는 다음을 대상으로 하는 작업으로 배포할 수 있습니다.

각 API 버전에서 변경된 속성 목록은 변경 로그를 참조하세요.

리소스 형식

Microsoft.ContainerInstance/containerGroups 리소스를 만들려면 템플릿에 다음 JSON을 추가합니다.

{
  "type": "Microsoft.ContainerInstance/containerGroups",
  "apiVersion": "2018-10-01",
  "name": "string",
  "location": "string",
  "tags": {
    "tagName1": "tagValue1",
    "tagName2": "tagValue2"
  },
  "identity": {
    "type": "string",
    "userAssignedIdentities": {}
  },
  "properties": {
    "containers": [
      {
        "name": "string",
        "properties": {
          "command": [ "string" ],
          "environmentVariables": [
            {
              "name": "string",
              "secureValue": "string",
              "value": "string"
            }
          ],
          "image": "string",
          "livenessProbe": {
            "exec": {
              "command": [ "string" ]
            },
            "failureThreshold": "int",
            "httpGet": {
              "path": "string",
              "port": "int",
              "scheme": "string"
            },
            "initialDelaySeconds": "int",
            "periodSeconds": "int",
            "successThreshold": "int",
            "timeoutSeconds": "int"
          },
          "ports": [
            {
              "port": "int",
              "protocol": "string"
            }
          ],
          "readinessProbe": {
            "exec": {
              "command": [ "string" ]
            },
            "failureThreshold": "int",
            "httpGet": {
              "path": "string",
              "port": "int",
              "scheme": "string"
            },
            "initialDelaySeconds": "int",
            "periodSeconds": "int",
            "successThreshold": "int",
            "timeoutSeconds": "int"
          },
          "resources": {
            "limits": {
              "cpu": "int",
              "gpu": {
                "count": "int",
                "sku": "string"
              },
              "memoryInGB": "[json('decimal-as-string')]"
            },
            "requests": {
              "cpu": "int",
              "gpu": {
                "count": "int",
                "sku": "string"
              },
              "memoryInGB": "[json('decimal-as-string')]"
            }
          },
          "volumeMounts": [
            {
              "mountPath": "string",
              "name": "string",
              "readOnly": "bool"
            }
          ]
        }
      }
    ],
    "diagnostics": {
      "logAnalytics": {
        "logType": "string",
        "metadata": {},
        "workspaceId": "string",
        "workspaceKey": "string"
      }
    },
    "dnsConfig": {
      "nameServers": [ "string" ],
      "options": "string",
      "searchDomains": "string"
    },
    "imageRegistryCredentials": [
      {
        "password": "string",
        "server": "string",
        "username": "string"
      }
    ],
    "ipAddress": {
      "dnsNameLabel": "string",
      "ip": "string",
      "ports": [
        {
          "port": "int",
          "protocol": "string"
        }
      ],
      "type": "string"
    },
    "networkProfile": {
      "id": "string"
    },
    "osType": "string",
    "restartPolicy": "string",
    "volumes": [
      {
        "azureFile": {
          "readOnly": "bool",
          "shareName": "string",
          "storageAccountKey": "string",
          "storageAccountName": "string"
        },
        "emptyDir": {},
        "gitRepo": {
          "directory": "string",
          "repository": "string",
          "revision": "string"
        },
        "name": "string",
        "secret": {}
      }
    ]
  }
}

속성 값

containerGroups

Name Description
형식 리소스 종류 'Microsoft.ContainerInstance/containerGroups'
apiVersion 리소스 api 버전 '2018-10-01'
name 리소스 이름 string(필수)

문자 제한: 1-63

유효한 문자:
소문자, 숫자 및 하이픈

하이픈으로 시작하거나 끝날 수 없습니다. 연속 하이픈은 허용되지 않습니다.
위치 리소스 위치입니다. string
tags 리소스 태그입니다. 태그 이름 및 값의 사전입니다. 템플릿의 태그를 참조하세요.
identity 구성된 경우 컨테이너 그룹 ID입니다. ContainerGroupIdentity
properties ContainerGroupProperties (필수)

ContainerGroupIdentity

Name Description
형식 컨테이너 그룹에 사용되는 ID 유형입니다. ‘SystemAssigned, UserAssigned’ 유형에는 암시적으로 만들어진 ID와 사용자 할당 ID 세트가 모두 포함되어 있습니다. ‘None’ 유형은 컨테이너 그룹에서 모든 ID를 제거합니다. 'None'
'SystemAssigned'
'SystemAssigned, UserAssigned'
'UserAssigned'
userAssignedIdentities 컨테이너 그룹과 연결된 사용자 ID 목록입니다. 사용자 ID 사전 키 참조는 '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}' 형식의 ARM 리소스 ID입니다. object

ContainerGroupProperties

Name Description
컨테이너 컨테이너 그룹 내 컨테이너입니다. Container[] (필수)
진단 컨테이너 그룹에 대한 진단 정보입니다. ContainerGroupDiagnostics
dnsConfig 컨테이너 그룹에 대한 DNS 구성 정보입니다. DnsConfiguration
imageRegistryCredentials 컨테이너 그룹을 만드는 데 사용할 이미지 레지스트리 자격 증명입니다. ImageRegistryCredential[]
ipAddress 컨테이너 그룹의 IP 주소 유형입니다. IpAddress
networkProfile 컨테이너 그룹에 대한 네트워크 프로필 정보입니다. ContainerGroupNetworkProfile
osType 컨테이너 그룹의 컨테이너에 필요한 운영 체제 유형입니다. 'Linux'
'Windows'(필수)
restartPolicy 컨테이너 그룹 내 모든 컨테이너에 대한 다시 시작 정책입니다.
- Always 항상 다시 시작
- OnFailure 실패 시 다시 시작
- Never 다시 시작 안 하세요.
'Always'
'Never'
'OnFailure'
volumes 이 컨테이너 그룹의 컨테이너에서 탑재할 수 있는 볼륨의 목록입니다. 볼륨[]

컨테이너

Name Description
name 컨테이너 인스턴스의 사용자 제공 이름입니다. string(필수)
properties 컨테이너 인스턴스 속성입니다. ContainerProperties (필수)

ContainerProperties

Name Description
명령을 사용합니다. 실행 형식으로 된 컨테이너 인스턴스 내 실행 명령입니다. string[]
environmentVariables 컨테이너 인스턴스에서 설정할 환경 변수입니다. EnvironmentVariable[]
이미지 컨테이너 인스턴스를 만드는 데 사용되는 이미지의 이름입니다. string(필수)
livenessProbe 활동성 프로브입니다. ContainerProbe
ports 컨테이너 인스턴스에서 노출되는 포트입니다. ContainerPort[]
readinessProbe 준비 상태 프로브입니다. ContainerProbe
리소스 컨테이너 인스턴스의 리소스 요구 사항입니다. ResourceRequirements (필수)
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
path 검색할 경로입니다. 문자열
포트 검색할 포트 번호입니다. int(필수)
scheme 체계입니다. 'http'
'https'

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(필수)

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(필수)

DnsConfiguration

Name Description
nameServers 컨테이너 그룹에 대한 DNS 서버입니다. string[] (필수)
옵션 컨테이너 그룹에 대한 DNS 옵션입니다. string
searchDomains 컨테이너 그룹의 호스트 이름 조회에 대한 DNS 검색 도메인입니다. 문자열

ImageRegistryCredential

Name Description
password 프라이빗 레지스트리의 암호입니다. string
서버 “http” 및 “https” 같은 프로토콜이 없는 Docker 이미지 레지스트리 서버입니다. string(필수)
사용자 이름 프라이빗 레지스트리의 사용자 이름입니다. string(필수)

IpAddress

Name Description
dnsNameLabel IP에 대한 DNS 이름 레이블입니다. 문자열
ip 공용 인터넷에 노출되는 IP입니다. 문자열
ports 컨테이너 그룹에서 노출되는 포트 목록입니다. Port[] (필수)
형식 IP가 공용 인터넷 또는 개인 VNET에 노출되는지 여부를 지정합니다. 'Private'
'Public'(필수)

포트

Name Description
포트 포트 번호. int(필수)
protocol 포트와 연결된 프로토콜입니다. 'TCP'
'UDP'

ContainerGroupNetworkProfile

Name Description
id 네트워크 프로필 식별자입니다. 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

빠른 시작 템플릿

다음 빠른 시작 템플릿은 이 리소스 유형을 배포합니다.

템플릿 Description
AKS에서 가용성 그룹 SQL Server

Azure에 배포
그러면 새 AKS 클러스터가 만들어지고 더플 및 ACI를 사용하여 배포된 CNAB 패키지를 사용하여 SQL Server 가용성 그룹을 배포합니다.
WordPress 사이트 만들기

Azure에 배포
이 템플릿은 Container Instance에 WordPress 사이트를 만듭니다.
가상 네트워크에서 WordPress 사이트 만들기

Azure에 배포
이 템플릿은 가상 네트워크의 Container Instance에 WordPress 사이트를 만듭니다. WordPress 사이트에 액세스할 수 있는 공용 사이트 FQDN을 출력합니다.
Azure Container Instances - bc with SQL Server 및 IIS

Azure에 배포
Azure Container Instances 완전한 기능을 갖춘 Microsoft Dynamics 365 Business Central 환경을 사용하여 단일 Windows 컨테이너를 배포합니다.
Container Instances 및 Application Gateway 있는 Front Door

Azure에 배포
이 템플릿은 컨테이너 그룹 및 Application Gateway 사용하여 Front Door 표준/프리미엄을 만듭니다.
front Door Standard/Premium(Azure Container Instances 사용)

Azure에 배포
이 템플릿은 컨테이너 그룹을 사용하여 Front Door 표준/프리미엄을 만듭니다.
Azure Container Instances - 상태 프로브가 있는 컨테이너

Azure에 배포
Azure Container Instances 사용하여 상태 프로브가 있는 Linux 컨테이너를 배포합니다.
Azure Container Instances - 공용 IP가 있는 Linux 컨테이너

Azure에 배포
Azure Container Instances 사용하여 공용 IP를 통해 액세스할 수 있는 단일 Linux 컨테이너를 배포합니다.
Azure Container Instances - 보안 envVar이 있는 컨테이너

Azure에 배포
Azure Container Instances 사용하여 보안 환경 변수가 있는 Linux 컨테이너를 배포합니다.
Azure Container Instances - emptyDir을 사용한 Linux 컨테이너

Azure에 배포
Azure Container Instances 사용하여 emptyDir 볼륨을 공유하는 두 개의 Linux 컨테이너를 배포합니다.
Azure Container Instances - gitRepo를 사용한 Linux 컨테이너

Azure에 배포
Azure Container Instances 사용하여 gitRepo 볼륨을 사용하는 Linux 컨테이너를 배포합니다.
Azure Container Instances - 비밀이 있는 컨테이너

Azure에 배포
Azure Container Instances 사용하여 비밀 볼륨이 있는 Linux 컨테이너를 배포합니다.
영구 스토리지를 사용하여 주문형 SFTP 서버 만들기

Azure에 배포
이 템플릿은 ACI(Azure Container Instance)를 사용하는 주문형 SFTP 서버를 보여 줍니다.
기존 스토리지 계정을 사용하는 주문형 SFTP 서버

Azure에 배포
이 템플릿은 ACI(Azure Container Instance)를 사용하는 주문형 SFTP 서버를 보여 줍니다.
컨테이너를 통해 스토리지 계정 파일 공유 만들기

Azure에 배포
이 템플릿은 Container Instance에서 azure-cli를 통해 스토리지 계정 및 파일 공유를 만듭니다.
ACI의 UDP 컨테이너

Azure에 배포
이 템플릿은 ACI 리소스를 만들고 UDP를 통해 컨테이너를 노출합니다.
Azure Container Instances - VNet

Azure에 배포
Azure 가상 네트워크에 컨테이너 instance 배포합니다.
인증서를 사용하여 Application Gateway 만들기

Azure에 배포
이 템플릿은 자체 서명된 인증서를 Key Vault 생성한 다음 Application Gateway 참조하는 방법을 보여 줍니다.

Terraform(AzAPI 공급자) 리소스 정의

containerGroups 리소스 종류는 다음을 대상으로 하는 작업으로 배포할 수 있습니다.

  • 리소스 그룹

각 API 버전에서 변경된 속성 목록은 변경 로그를 참조하세요.

리소스 형식

Microsoft.ContainerInstance/containerGroups 리소스를 만들려면 템플릿에 다음 Terraform을 추가합니다.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.ContainerInstance/containerGroups@2018-10-01"
  name = "string"
  location = "string"
  parent_id = "string"
  tags = {
    tagName1 = "tagValue1"
    tagName2 = "tagValue2"
  }
  identity {
    type = "string"
    identity_ids = []
  }
  body = jsonencode({
    properties = {
      containers = [
        {
          name = "string"
          properties = {
            command = [
              "string"
            ]
            environmentVariables = [
              {
                name = "string"
                secureValue = "string"
                value = "string"
              }
            ]
            image = "string"
            livenessProbe = {
              exec = {
                command = [
                  "string"
                ]
              }
              failureThreshold = int
              httpGet = {
                path = "string"
                port = int
                scheme = "string"
              }
              initialDelaySeconds = int
              periodSeconds = int
              successThreshold = int
              timeoutSeconds = int
            }
            ports = [
              {
                port = int
                protocol = "string"
              }
            ]
            readinessProbe = {
              exec = {
                command = [
                  "string"
                ]
              }
              failureThreshold = int
              httpGet = {
                path = "string"
                port = int
                scheme = "string"
              }
              initialDelaySeconds = int
              periodSeconds = int
              successThreshold = int
              timeoutSeconds = int
            }
            resources = {
              limits = {
                cpu = int
                gpu = {
                  count = int
                  sku = "string"
                }
                memoryInGB = "decimal-as-string"
              }
              requests = {
                cpu = int
                gpu = {
                  count = int
                  sku = "string"
                }
                memoryInGB = "decimal-as-string"
              }
            }
            volumeMounts = [
              {
                mountPath = "string"
                name = "string"
                readOnly = bool
              }
            ]
          }
        }
      ]
      diagnostics = {
        logAnalytics = {
          logType = "string"
          metadata = {}
          workspaceId = "string"
          workspaceKey = "string"
        }
      }
      dnsConfig = {
        nameServers = [
          "string"
        ]
        options = "string"
        searchDomains = "string"
      }
      imageRegistryCredentials = [
        {
          password = "string"
          server = "string"
          username = "string"
        }
      ]
      ipAddress = {
        dnsNameLabel = "string"
        ip = "string"
        ports = [
          {
            port = int
            protocol = "string"
          }
        ]
        type = "string"
      }
      networkProfile = {
        id = "string"
      }
      osType = "string"
      restartPolicy = "string"
      volumes = [
        {
          azureFile = {
            readOnly = bool
            shareName = "string"
            storageAccountKey = "string"
            storageAccountName = "string"
          }
          gitRepo = {
            directory = "string"
            repository = "string"
            revision = "string"
          }
          name = "string"
          secret = {}
        }
      ]
    }
  })
}

속성 값

containerGroups

Name Description
형식 리소스 종류 "Microsoft.ContainerInstance/containerGroups@2018-10-01"
name 리소스 이름 string(필수)

문자 제한: 1-63

유효한 문자:
소문자, 숫자 및 하이픈

하이픈으로 시작하거나 끝날 수 없습니다. 연속 하이픈은 허용되지 않습니다.
위치 리소스 위치입니다. 문자열
parent_id 리소스 그룹에 배포하려면 해당 리소스 그룹의 ID를 사용합니다. string(필수)
tags 리소스 태그입니다. 태그 이름 및 값의 사전입니다.
identity 구성된 경우 컨테이너 그룹 ID입니다. ContainerGroupIdentity
properties ContainerGroupProperties (필수)

ContainerGroupIdentity

Name Description
형식 컨테이너 그룹에 사용되는 ID 유형입니다. ‘SystemAssigned, UserAssigned’ 유형에는 암시적으로 만들어진 ID와 사용자 할당 ID 세트가 모두 포함되어 있습니다. ‘None’ 유형은 컨테이너 그룹에서 모든 ID를 제거합니다. "SystemAssigned"
"SystemAssigned, UserAssigned"
"UserAssigned"
identity_ids 컨테이너 그룹과 연결된 사용자 ID 목록입니다. 사용자 ID 사전 키 참조는 '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}' 형식의 ARM 리소스 ID입니다. 사용자 ID ID의 배열입니다.

ContainerGroupProperties

Name Description
컨테이너 컨테이너 그룹 내 컨테이너입니다. Container[] (필수)
진단 컨테이너 그룹에 대한 진단 정보입니다. ContainerGroupDiagnostics
dnsConfig 컨테이너 그룹에 대한 DNS 구성 정보입니다. DnsConfiguration
imageRegistryCredentials 컨테이너 그룹을 만드는 데 사용할 이미지 레지스트리 자격 증명입니다. ImageRegistryCredential[]
ipAddress 컨테이너 그룹의 IP 주소 유형입니다. IpAddress
networkProfile 컨테이너 그룹에 대한 네트워크 프로필 정보입니다. ContainerGroupNetworkProfile
osType 컨테이너 그룹의 컨테이너에 필요한 운영 체제 유형입니다. "Linux"
"Windows"(필수)
restartPolicy 컨테이너 그룹 내 모든 컨테이너에 대한 다시 시작 정책입니다.
- Always 항상 다시 시작
- OnFailure 실패 시 다시 시작
- Never 다시 시작 안 하세요.
"항상"
"안 함"
"OnFailure"
volumes 이 컨테이너 그룹의 컨테이너에서 탑재할 수 있는 볼륨의 목록입니다. Volume[]

컨테이너

Name Description
name 컨테이너 인스턴스의 사용자 제공 이름입니다. string(필수)
properties 컨테이너 인스턴스 속성입니다. ContainerProperties (필수)

ContainerProperties

Name Description
명령을 사용합니다. 실행 형식으로 된 컨테이너 인스턴스 내 실행 명령입니다. string[]
environmentVariables 컨테이너 인스턴스에서 설정할 환경 변수입니다. EnvironmentVariable[]
이미지 컨테이너 인스턴스를 만드는 데 사용되는 이미지의 이름입니다. string(필수)
livenessProbe 활동성 프로브입니다. ContainerProbe
ports 컨테이너 인스턴스에서 노출되는 포트입니다. ContainerPort[]
readinessProbe 준비 상태 프로브입니다. ContainerProbe
리소스 컨테이너 인스턴스의 리소스 요구 사항입니다. ResourceRequirements (필수)
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
path 검색할 경로입니다. 문자열
포트 검색할 포트 번호입니다. int(필수)
scheme 체계입니다. "http"
"https"

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(필수)

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(필수)

DnsConfiguration

Name Description
nameServers 컨테이너 그룹에 대한 DNS 서버입니다. string[] (필수)
옵션 컨테이너 그룹에 대한 DNS 옵션입니다. 문자열
searchDomains 컨테이너 그룹의 호스트 이름 조회에 대한 DNS 검색 도메인입니다. 문자열

ImageRegistryCredential

Name Description
password 프라이빗 레지스트리의 암호입니다. string
서버 “http” 및 “https” 같은 프로토콜이 없는 Docker 이미지 레지스트리 서버입니다. string(필수)
사용자 이름 프라이빗 레지스트리의 사용자 이름입니다. string(필수)

IpAddress

Name Description
dnsNameLabel IP에 대한 DNS 이름 레이블입니다. string
ip 공용 인터넷에 노출되는 IP입니다. 문자열
ports 컨테이너 그룹에서 노출되는 포트 목록입니다. Port[] (필수)
형식 IP가 공용 인터넷 또는 개인 VNET에 노출되는지 여부를 지정합니다. "Private"
"Public"(필수)

포트

Name Description
포트 포트 번호. int(필수)
protocol 포트와 연결된 프로토콜입니다. "TCP"
"UDP"

ContainerGroupNetworkProfile

Name Description
id 네트워크 프로필 식별자입니다. 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 리포지토리가 포함됩니다. 문자열
리포지토리 리포지토리 URL string(필수)
수정 지정된 수정 버전에 대한 해시를 커밋합니다. string