Bu makalede, kapsayıcı grubunu yapılandırmak için Azure Container Instances tarafından desteklenen YAML dosyasının söz dizimi ve özellikleri yer alır. Grup yapılandırmasını Azure CLI'daki az container create komutuna giriş yapmak için YAML dosyası kullanın.
YAML dosyası, kapsayıcı grubunu yeniden üretilebilir dağıtımlar için yapılandırmanın kullanışlı bir yoludur. Bir kapsayıcı grubu oluşturmak veya güncelleştirmek için Resource Manager şablonu veya Azure Container Instances SDK'ları kullanmanın kısa bir alternatifidir.
Not
Bu başvuru, Azure Container Instances REST API sürümü 2021-10-01için YAML dosyaları için geçerlidir.
Şema
YAML dosyasının şeması, anahtar özellikleri vurgulamak için açıklamalar da dahil olmak üzere aşağıdaki gibidir. Bu şemadaki özelliklerin açıklaması için Özellik değerleri bölümüne bakın.
name: string # Name of the container group
apiVersion: '2021-10-01'
location: string
tags: {}
identity:
type: string
userAssignedIdentities: {}
properties: # Properties of container group
containers: # Array of container instances in the group
- name: string # Name of an instance
properties: # Properties of an instance
image: string # Container image used to create the instance
command:
- string
ports: # External-facing ports exposed on the instance, must also be set in group ipAddress property
- protocol: string
port: integer
environmentVariables:
- name: string
value: string
secureValue: string
resources: # Resource requirements of the instance
requests:
memoryInGB: number
cpu: number
gpu:
count: integer
sku: string
limits:
memoryInGB: number
cpu: number
gpu:
count: integer
sku: string
volumeMounts: # Array of volume mounts for the instance
- name: string
mountPath: string
readOnly: boolean
livenessProbe:
exec:
command:
- string
httpGet:
httpHeaders:
- name: string
value: string
path: string
port: integer
scheme: string
initialDelaySeconds: integer
periodSeconds: integer
failureThreshold: integer
successThreshold: integer
timeoutSeconds: integer
readinessProbe:
exec:
command:
- string
httpGet:
httpHeaders:
- name: string
value: string
path: string
port: integer
scheme: string
initialDelaySeconds: integer
periodSeconds: integer
failureThreshold: integer
successThreshold: integer
timeoutSeconds: integer
imageRegistryCredentials: # Credentials to pull a private image
- server: string
username: string
password: string
identity: string
identityUrl: string
restartPolicy: string
ipAddress: # IP address configuration of container group
ports:
- protocol: string
port: integer
type: string
ip: string
dnsNameLabel: string
autoGeneratedDomainNameLabelScope: string
osType: string
volumes: # Array of volumes available to the instances
- name: string
azureFile:
shareName: string
readOnly: boolean
storageAccountName: string
storageAccountKey: string
emptyDir: {}
secret: {}
gitRepo:
directory: string
repository: string
revision: string
diagnostics:
logAnalytics:
workspaceId: string
workspaceKey: string
workspaceResourceId: string
logType: string
metadata: {}
subnetIds: # Subnet to deploy the container group into
- id: string
name: string
dnsConfig: # DNS configuration for container group
nameServers:
- string
searchDomains: string
options: string
sku: string # SKU for the container group
encryptionProperties:
vaultBaseUrl: string
keyName: string
keyVersion: string
initContainers: # Array of init containers in the group
- name: string
properties:
image: string
command:
- string
environmentVariables:
- name: string
value: string
secureValue: string
volumeMounts:
- name: string
mountPath: string
readOnly: boolean
Özellik değerleri
Aşağıdaki tablolarda şemada ayarlamanız gereken değerler açıklanmaktadır.
Microsoft.ContainerInstance/containerGroups nesnesi
| Adı |
Tür |
Zorunlu |
Değer |
| Adı |
string |
Yes |
Kapsayıcı grubunun adı. |
| apiVersion |
enum |
Yes |
2021-10-01 (en son), 2021-09-01, 2021-07-01, 2021-03-01, 2020-11-01, 2019-12-01, 2018-10-01, 2018-09-01, 2018-07-01, 2018-06-01, 2018-04-01 |
| konum |
Dize |
Hayır |
Kaynak konumu. |
| tags |
nesne |
Hayır |
Kaynak etiketleri. |
| identity |
nesne |
Hayır |
Yapılandırıldıysa kapsayıcı grubunun kimliği. - ContainerGroupIdentity nesnesi |
| özellikler |
nesne |
Yes |
ContainerGroupProperties nesnesi |
ContainerGroupIdentity nesnesi
| Adı |
Tür |
Zorunlu |
Değer |
| Tür |
enum |
Hayır |
Kapsayıcı grubu için kullanılan kimlik türü. 'SystemAssigned, UserAssigned' türü hem örtük olarak oluşturulmuş bir kimliği hem de kullanıcı tarafından atanan bir kimlik kümesini içerir. 'Hiçbiri' türü kapsayıcı grubundan tüm kimlikleri kaldırır. - SystemAssigned, UserAssigned, SystemAssigned, UserAssigned, None |
| userAssignedIdentities |
nesne |
Hayır |
Kapsayıcı grubuyla ilişkili kullanıcı kimliklerinin listesi. Kullanıcı kimliği sözlüğü anahtar başvuruları, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}' biçimindeki Azure Resource Manager kaynak kimlikleridir. |
ContainerGroupProperties nesnesi
| Adı |
Tür |
Zorunlu |
Değer |
| containers |
dizi |
Yes |
Kapsayıcı grubu içindeki kapsayıcılar. - Kapsayıcı nesnesi |
| imageRegistryCredentials |
dizi |
Hayır |
Kapsayıcı grubunun oluşturulduğu görüntü kayıt defteri kimlik bilgileri. - ImageRegistryCredential nesnesi |
| restartPolicy |
enum |
Hayır |
Kapsayıcı grubu içindeki tüm kapsayıcılar için yeniden başlatma ilkesi. - Always Her zaman yeniden başlat- OnFailure Hatada yeniden başlatma- Never Hiçbir zaman yeniden başlatma. - Her Zaman, OnFailure, Asla |
| ipAddress |
nesne |
Hayır |
Kapsayıcı grubunun IP adresi türü. - IpAddress nesnesi |
| osType |
enum |
Yes |
Kapsayıcı grubundaki kapsayıcılar için gereken işletim sistemi türü. - Windows veya Linux |
| volumes |
dizi |
Hayır |
Bu kapsayıcı grubundaki kapsayıcıların bağlayabileceğiniz birimlerin listesi. - Birim nesnesi |
| tanılama |
nesne |
Hayır |
Kapsayıcı grubu için tanılama bilgileri. - ContainerGroupDiagnostics nesnesi |
| subnetId'ler |
nesne |
Hayır |
Kapsayıcı grubu için alt ağ bilgileri. - ContainerGroupSubnetIds nesnesi |
| dnsConfig |
nesne |
Hayır |
Kapsayıcı grubu için DNS yapılandırma bilgileri. - DnsConfiguration nesnesi |
| sku |
enum |
Hayır |
Kapsayıcı grubu için SKU - Standart veya Ayrılmış |
| encryptionProperties |
nesne |
Hayır |
Kapsayıcı grubunun şifreleme özellikleri. - EncryptionProperties nesnesi |
| initContainers |
dizi |
Hayır |
Kapsayıcı grubu için init kapsayıcıları. - InitContainerDefinition nesnesi |
Kapsayıcı nesnesi
| Adı |
Tür |
Zorunlu |
Değer |
| Adı |
string |
Yes |
Kapsayıcı örneğinin kullanıcı tarafından sağlanan adı. |
| özellikler |
nesne |
Yes |
Kapsayıcı örneğinin özellikleri. - ContainerProperties nesnesi |
ImageRegistryCredential nesnesi
| Adı |
Tür |
Zorunlu |
Değer |
| sunucu |
string |
Yes |
"http" ve "https" gibi bir protokol içermeyen Docker görüntü kayıt defteri sunucusu. |
| username |
Dize |
Hayır |
Özel kayıt defterinin kullanıcı adı. |
| password |
Dize |
Hayır |
Özel kayıt defterinin parolası. |
| identity |
Dize |
Hayır |
Kimlik doğrulaması için kullanılan kullanıcı veya sistem tarafından atanan yönetilen kimliğin kaynak kimliği. |
| identityUrl |
Dize |
Hayır |
Özel kayıt defterinin kimlik URL'si. |
IpAddress nesnesi
| Adı |
Tür |
Zorunlu |
Değer |
| bağlantı noktaları |
dizi |
Yes |
Kapsayıcı grubunda kullanıma sunulan bağlantı noktalarının listesi. - Bağlantı noktası nesnesi |
| Tür |
enum |
Yes |
IP'nin genel İnternet'e mi yoksa özel sanal ağa mı açık olduğunu belirtir. - Genel veya Özel |
| ıp |
Dize |
Hayır |
Genel İnternet'e sunulan IP. |
| dnsNameLabel |
Dize |
Hayır |
IP için Dns adı etiketi. |
Birim nesnesi
| Adı |
Tür |
Zorunlu |
Değer |
| Adı |
string |
Yes |
Birimin adı. |
| azureFile |
nesne |
Hayır |
Azure Dosya birimi. - AzureFileVolume nesnesi |
| emptyDir |
nesne |
Hayır |
Boş dizin birimi. |
| gizli dizi |
nesne |
Hayır |
Gizli birim. |
| gitRepo |
nesne |
Hayır |
Git deposu birimi. - GitRepoVolume nesnesi |
ContainerGroupDiagnostics nesnesi
| Adı |
Tür |
Zorunlu |
Değer |
| logAnalytics |
nesne |
Hayır |
Kapsayıcı grubu günlük analizi bilgileri. - LogAnalytics nesnesi |
ContainerGroupSubnetIds nesnesi
| Adı |
Tür |
Zorunlu |
Değer |
| id |
string |
Yes |
Alt ağın tanımlayıcısı. |
| Adı |
string |
Hayır |
Alt ağın adı. |
DnsConfiguration nesnesi
| Adı |
Tür |
Zorunlu |
Değer |
| nameServers |
dizi |
Yes |
Kapsayıcı grubu için DNS sunucuları. -dizgi |
| searchDomains |
Dize |
Hayır |
Kapsayıcı grubundaki konak adı araması için DNS arama etki alanları. |
| seçenekler |
Dize |
Hayır |
Kapsayıcı grubu için DNS seçenekleri. |
EncryptionProperties nesnesi
| Adı |
Tür |
Zorunlu |
Değer |
| vaultBaseUrl |
string |
Yes |
Keyvault temel URL'si. |
| keyName |
string |
Yes |
Şifreleme anahtarı adı. |
| keyVersion |
string |
Yes |
Şifreleme anahtarı sürümü. |
InitContainerDefinition nesnesi
ContainerProperties nesnesi
| Adı |
Tür |
Zorunlu |
Değer |
| görüntü
|
string |
Yes |
Kapsayıcı örneğini oluşturmak için kullanılan görüntünün adı. |
| komut |
dizi |
Hayır |
exec biçiminde kapsayıcı örneği içinde yürütülecek komutlar. -dizgi |
| bağlantı noktaları |
dizi |
Hayır |
Kapsayıcı örneğinde kullanıma sunulan bağlantı noktaları. - ContainerPort nesnesi |
| environmentVariables |
dizi |
Hayır |
Kapsayıcı örneğinde ayarlanacağı ortam değişkenleri. - EnvironmentVariable nesnesi |
| kaynaklar |
nesne |
Yes |
Kapsayıcı örneğinin kaynak gereksinimleri. - ResourceRequirements nesnesi |
| volumeMounts |
dizi |
Hayır |
Birim, kapsayıcı örneğinde kullanılabilir. - VolumeMount nesnesi |
| livenessProbe |
nesne |
Hayır |
Canlılık araştırması. - ContainerProbe nesnesi |
| readinessProbe |
nesne |
Hayır |
Hazır olma araştırması. - ContainerProbe nesnesi |
Bağlantı noktası nesnesi
| Adı |
Tür |
Zorunlu |
Değer |
| protokol |
enum |
Hayır |
Bağlantı noktasıyla ilişkili protokol. - TCP veya UDP |
| port |
integer |
Yes |
Bağlantı noktası numarası. |
AzureFileVolume nesnesi
| Adı |
Tür |
Zorunlu |
Değer |
| shareName |
string |
Yes |
Birim olarak bağlanacak Azure Dosya paylaşımının adı. |
| readOnly |
boolean |
Hayır |
Paylaşılan Azure Dosyasının birim olarak bağlanıp bağlanmadığını gösteren bayrak salt okunurdur. |
| storageAccountName |
string |
Yes |
Azure Dosya paylaşımını içeren depolama hesabının adı. |
| storageAccountKey |
Dize |
Hayır |
Azure Dosya paylaşımına erişmek için kullanılan depolama hesabı erişim anahtarı. |
GitRepoVolume nesnesi
| Adı |
Tür |
Zorunlu |
Değer |
| dizin |
Dize |
Hayır |
Hedef dizin adı. '..' içermemeli veya '..' ile başlamamalıdır. '.' sağlanırsa birim dizini git deposudur. Aksi takdirde, belirtilirse birim, verilen ada sahip alt dizindeki git deposunu içerir. |
| depo |
string |
Yes |
Depo URL'si |
| düzeltme |
Dize |
Hayır |
Belirtilen düzeltme için karma işleme. |
LogAnalytics nesnesi
| Adı |
Tür |
Zorunlu |
Değer |
| workspaceId |
string |
Yes |
Log Analytics için çalışma alanı kimliği |
| workspaceKey |
string |
Yes |
Log Analytics için çalışma alanı anahtarı |
| workspaceResourceId |
Dize |
Hayır |
Log Analytics için çalışma alanı kaynak kimliği |
| logType |
enum |
Hayır |
Kullanılacak günlük türü. - ContainerInsights veya ContainerInstanceLogs |
| meta veriler |
nesne |
Hayır |
Log Analytics için meta veriler. |
InitContainerPropertiesDefinition nesnesi
| Adı |
Tür |
Zorunlu |
Değer |
| görüntü
|
Dize |
Hayır |
init kapsayıcısının görüntüsü. |
| komut |
dizi |
Hayır |
exec biçiminde init kapsayıcısı içinde yürütülecek komut. -dizgi |
| environmentVariables |
dizi |
Hayır |
init kapsayıcısında ayarlanacağı ortam değişkenleri. - EnvironmentVariable nesnesi |
| volumeMounts |
dizi |
Hayır |
Birim, init kapsayıcısı için kullanılabilir. - VolumeMount nesnesi |
ContainerPort nesnesi
| Adı |
Tür |
Zorunlu |
Değer |
| protokol |
enum |
Hayır |
Bağlantı noktasıyla ilişkili protokol. - TCP veya UDP |
| port |
integer |
Yes |
Kapsayıcı grubu içinde kullanıma sunulan bağlantı noktası numarası. |
EnvironmentVariable nesnesi
| Adı |
Tür |
Zorunlu |
Değer |
| Adı |
string |
Yes |
Ortam değişkeninin adı. |
| değer |
Dize |
Hayır |
Ortam değişkeninin değeri. |
| secureValue |
Dize |
Hayır |
Güvenli ortam değişkeninin değeri. |
ResourceRequirements nesnesi
VolumeMount nesnesi
| Adı |
Tür |
Zorunlu |
Değer |
| Adı |
string |
Yes |
Birim bağlamasının adı. |
| mountPath |
string |
Yes |
Birimin bağlanacağı kapsayıcının içindeki yol. İki nokta üst üste (:)) içermemelidir. |
| readOnly |
boolean |
Hayır |
Birim bağlamasının salt okunur olup olmadığını gösteren bayrak. |
ContainerProbe nesnesi
| Adı |
Tür |
Zorunlu |
Değer |
| Exec |
nesne |
Hayır |
Yoklama için yürütme komutu - ContainerExec nesnesi |
| httpGet |
nesne |
Hayır |
Yoklama için Http Get ayarları - ContainerHttpGet nesnesi |
| initialDelaySeconds |
integer |
Hayır |
İlk gecikme saniyesi. |
| periodSeconds |
integer |
Hayır |
Dönem saniyeleri. |
| failureThreshold |
integer |
Hayır |
Hata eşiği. |
| successThreshold |
integer |
Hayır |
Başarı eşiği. |
| timeoutSeconds |
integer |
Hayır |
Zaman aşımı saniyeleri. |
ResourceRequests nesnesi
| Adı |
Tür |
Zorunlu |
Değer |
| memoryInGB |
Numara |
Yes |
Bu kapsayıcı örneğinin GB cinsinden bellek isteği. |
| cpu |
Numara |
Yes |
Bu kapsayıcı örneğinin CPU isteği. |
| gpu |
nesne |
Hayır |
Bu kapsayıcı örneğinin GPU isteği. - GpuResource nesnesi |
ResourceLimits nesnesi
| Adı |
Tür |
Zorunlu |
Değer |
| memoryInGB |
numara |
Hayır |
Bu kapsayıcı örneğinin GB cinsinden bellek sınırı. |
| cpu |
numara |
Hayır |
Bu kapsayıcı örneğinin CPU sınırı. |
| gpu |
nesne |
Hayır |
Bu kapsayıcı örneğinin GPU sınırı. - GpuResource nesnesi |
ContainerExec nesnesi
| Adı |
Tür |
Zorunlu |
Değer |
| komut |
dizi |
Hayır |
Kapsayıcı içinde yürütülecek komutlar. -dizgi |
ContainerHttpGet nesnesi
| Adı |
Tür |
Zorunlu |
Değer |
| yol |
Dize |
Hayır |
Yoklama yolu. |
| port |
integer |
Yes |
Yoklama için bağlantı noktası numarası. |
| scheme |
enum |
Hayır |
Düzen. - http veya https |
| httpHeaders |
nesne |
Hayır |
Yoklamada yer alan HTTP üst bilgileri. - HttpHeaders nesnesi |
| Adı |
Tür |
Zorunlu |
Değer |
| Adı |
string |
Hayır |
Üst bilginin adı. |
| değer |
Dize |
Hayır |
Üst bilginin değeri. |
Önemli
K80 ve P100 GPU SKU'ları 31 Ağustos 2023'e kadar emekli oluyor. Bunun nedeni, kullanılan temel vm'lerin kullanımdan kaldırılmasıdır: NC Serisi ve NCv2 Serisi V100 SKU'ları kullanılabilir olacak olsa da, bunun yerine Azure Kubernetes Service'i kullanmak yeniden kabul edilir. GPU kaynakları tam olarak desteklenmez ve üretim iş yükleri için kullanılmamalıdır. Bugün AKS'ye geçiş yapmak için aşağıdaki kaynakları kullanın: AKS'ye Geçiş.
GpuResource nesnesi
| Adı |
Tür |
Zorunlu |
Değer |
| count |
integer |
Yes |
GPU kaynağının sayısı. |
| sku |
enum |
Yes |
GPU kaynağının SKU'su. - V100 |
Sonraki adımlar
YaML dosyası kullanarak çok kapsayıcılı grup dağıtma öğreticisine bakın.
Sanal ağda kapsayıcı grupları dağıtmak veya dış birimi bağlamak için YAML dosyası kullanma örneklerine bakın.