Definicja zasobu Bicep
Typ zasobu containerGroups można wdrożyć przy użyciu operacji docelowych:
Aby uzyskać listę zmienionych właściwości w każdej wersji interfejsu API, zobacz dziennika zmian.
Aby utworzyć zasób Microsoft.ContainerInstance/containerGroups, dodaj następujący kod Bicep do szablonu.
resource symbolicname 'Microsoft.ContainerInstance/containerGroups@2018-10-01' = {
scope: resourceSymbolicName or scope
identity: {
type: 'string'
userAssignedIdentities: {
{customized property}: {}
}
}
location: 'string'
name: 'string'
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: int
}
requests: {
cpu: int
gpu: {
count: int
sku: 'string'
}
memoryInGB: int
}
}
volumeMounts: [
{
mountPath: 'string'
name: 'string'
readOnly: bool
}
]
}
}
]
diagnostics: {
logAnalytics: {
logType: 'string'
metadata: {
{customized property}: 'string'
}
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: {
{customized property}: 'string'
}
}
]
}
tags: {
{customized property}: 'string'
}
}
Wartości właściwości
Microsoft.ContainerInstance/containerGroups (Grupy Kontenerów)
AzureFileVolume (Wolumin Pliku)
| Nazwa |
Opis |
Wartość |
| readOnly (tylko do odczytu) |
Flaga wskazująca, czy udostępniony plik platformy Azure zainstalowany jako wolumin jest tylko do odczytu. |
Bool |
| NazwaUdostępnienia |
Nazwa udziału plików platformy Azure, który ma zostać zainstalowany jako wolumin. |
ciąg (wymagany) |
| kluczKontaPrzechowywania |
Klucz dostępu konta magazynu używany do uzyskiwania dostępu do udziału plików platformy Azure. |
ciąg |
| nazwaKontaPrzechowywania |
Nazwa konta magazynu zawierającego udział plików platformy Azure. |
ciąg (wymagany) |
Komponenty10Wh5UdSchemasContainergroupidentityPropertiesUserassignedidentitiesAdditionalproperties
Kontener
| Nazwa |
Opis |
Wartość |
| nazwa |
Podana przez użytkownika nazwa wystąpienia kontenera. |
ciąg (wymagany) |
| Właściwości |
Właściwości wystąpienia kontenera. |
ContainerProperties (wymagane) |
Składnik ContainerExec
| Nazwa |
Opis |
Wartość |
| polecenie |
Polecenia do wykonania w kontenerze. |
ciąg znakowy[] |
ContainerGroupDiagnostics
| Nazwa |
Opis |
Wartość |
| logAnalytics |
Informacje analizy dzienników grupy kontenerów. |
Usługa LogAnalytics |
ContainerGroupIdentity (Tożsamość grupy kontenerów)
| Nazwa |
Opis |
Wartość |
| typ |
Typ tożsamości używany dla grupy kontenerów. Typ "SystemAssigned, UserAssigned" zawiera zarówno niejawnie utworzoną tożsamość, jak i zestaw tożsamości przypisanych przez użytkownika. Typ "Brak" spowoduje usunięcie tożsamości z grupy kontenerów. |
"Brak" "SystemAssigned" "SystemAssigned, UserAssigned" "UserAssigned" |
| tożsamości przypisane użytkownikom |
Lista tożsamości użytkowników skojarzonych z grupą kontenerów. Odwołania do klucza słownika tożsamości użytkownika będą identyfikatorami zasobów arm w postaci: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}". |
ContainerGroupIdentityUserAssignedIdentities |
ContainerGroupIdentityUserAssignedIdentities
ContainerGroupNetworkProfile (Profil sieciowy)
| Nazwa |
Opis |
Wartość |
| id |
Identyfikator profilu sieciowego. |
ciąg (wymagany) |
ContainerGroupProperties (Właściwości grupy kontenerów)
| Nazwa |
Opis |
Wartość |
| Pojemniki |
Kontenery w grupie kontenerów. |
Container[] (wymagane) |
| Diagnostyka |
Informacje diagnostyczne dla grupy kontenerów. |
ContainerGroupDiagnostics |
| dnsConfig (konfiguracja systemu dns) |
Informacje o konfiguracji DNS dla grupy kontenerów. |
DnsConfiguration |
| imageRegistryCredentials (Dane uwierzytelniające imageRegistryCredentials) |
Poświadczenia rejestru obrazów, na podstawie których jest tworzona grupa kontenerów. |
Poświadczenie ImageRegistry[] |
| adres IP |
Typ adresu IP grupy kontenerów. |
IpAddress |
| Profil sieciowy |
Informacje o profilu sieci dla grupy kontenerów. |
ContainerGroupNetworkProfile (Profil sieciowy) |
| osType (typ systemu) |
Typ systemu operacyjnego wymagany przez kontenery w grupie kontenerów. |
"Linux" "Windows" (wymagane) |
| zasadaPonownegoUruchamiania |
Uruchom ponownie zasady dla wszystkich kontenerów w grupie kontenerów.
-
Always Zawsze uruchamiaj ponownie
-
OnFailure ponowne uruchomienie po awarii
-
Never Nigdy nie uruchamiaj ponownie |
"Zawsze" "Nigdy" "OnFailure" |
| Woluminów |
Lista woluminów, które mogą być instalowane przez kontenery w tej grupie kontenerów. |
woluminu[] |
ContainerHttpGet
| Nazwa |
Opis |
Wartość |
| ścieżka |
Ścieżka do sondy. |
ciąg |
| port |
Numer portu do sondy. |
int (wymagane) |
| plan |
Schemat. |
"http" "https" |
KontenerPort (ContainerPort)
| Nazwa |
Opis |
Wartość |
| port |
Numer portu uwidoczniony w grupie kontenerów. |
int (wymagane) |
| protokół |
Protokół skojarzony z portem. |
"TCP" "UDP" |
Sonda kontenerowa
| Nazwa |
Opis |
Wartość |
| Exec |
Polecenie wykonywania do sondowania |
Składnik ContainerExec |
| failureThreshold (próg awarii) |
Próg niepowodzenia. |
Int |
| Pobieranie httpGet |
Ustawienia Http Get do sondy |
ContainerHttpGet |
| initialDelaySeconds (Sekundy początkoweOpóźnienie) |
Początkowe opóźnienie sekund. |
Int |
| okresSekundy |
Czas w sekundach. |
Int |
| successThreshold (próg sukcesu) |
Próg powodzenia. |
Int |
| timeoutSekundy |
Limit czasu sekund. |
Int |
Właściwości Kontenera
| Nazwa |
Opis |
Wartość |
| polecenie |
Polecenia do wykonania w ramach wystąpienia kontenera w formularzu exec. |
ciąg znakowy[] |
| zmienne środowiskowe |
Zmienne środowiskowe do ustawienia w wystąpieniu kontenera. |
Zmienna środowiskowa[] |
| obraz |
Nazwa obrazu użytego do utworzenia wystąpienia kontenera. |
ciąg (wymagany) |
| livenessSonda |
Sonda liveness. |
Sonda kontenerowa |
| Porty |
Uwidocznione porty w wystąpieniu kontenera. |
KontenerPort[] |
| gotowośćProbe |
Sonda gotowości. |
Sonda kontenerowa |
| zasoby |
Wymagania dotyczące zasobów wystąpienia kontenera. |
ResourceRequirements (wymagane) |
| WoluminInstalacje |
Woluminy są montowane w wystąpieniu kontenera. |
volumeMount[] |
Konfiguracja dns
| Nazwa |
Opis |
Wartość |
| nameServers (serwery nazw) |
Serwery DNS dla grupy kontenerów. |
string[] (wymagane) |
| Opcje |
Opcje DNS dla grupy kontenerów. |
ciąg |
| searchDomains (Domeny wyszukiwania) |
Domeny wyszukiwania DNS dla wyszukiwania nazwy hosta w grupie kontenerów. |
ciąg |
Zmienna środowiskowa
| Nazwa |
Opis |
Wartość |
| nazwa |
Nazwa zmiennej środowiskowej. |
ciąg (wymagany) |
| secureValue (zabezpieczona wartość) |
Wartość bezpiecznej zmiennej środowiskowej. |
ciąg |
| wartość |
Wartość zmiennej środowiskowej. |
ciąg |
GitRepoVolume
| Nazwa |
Opis |
Wartość |
| katalog |
Nazwa katalogu docelowego. Nie może zawierać ani rozpoczynać się od ".". Jeśli element "." zostanie dostarczony, katalog woluminu będzie repozytorium git. W przeciwnym razie, jeśli zostanie określony, wolumin będzie zawierać repozytorium git w podkatalogu o podanej nazwie. |
ciąg |
| repozytorium |
Adres URL repozytorium |
ciąg (wymagany) |
| rewizja |
Zatwierdź skrót dla określonej poprawki. |
ciąg |
Zasób gpu
| Nazwa |
Opis |
Wartość |
| hrabia |
Liczba zasobów procesora GPU. |
int (wymagane) |
| Numer jednostki magazynowej |
Jednostka SKU zasobu procesora GPU. |
"K80" "P100" "V100" (wymagane) |
Poświadczenia ImageRegistryCredential
| Nazwa |
Opis |
Wartość |
| hasło |
Hasło dla rejestru prywatnego. |
ciąg |
| serwer |
Serwer rejestru obrazów platformy Docker bez protokołu, takiego jak "http" i "https". |
ciąg (wymagany) |
| nazwa użytkownika |
Nazwa użytkownika rejestru prywatnego. |
ciąg (wymagany) |
Adresy IP
| Nazwa |
Opis |
Wartość |
| dnsNameLabel (etykietaNazwy dns) |
Etykieta nazwy DNS dla adresu IP. |
ciąg |
| Ip |
Adres IP uwidoczniony w publicznym Internecie. |
ciąg |
| Porty |
Lista portów uwidocznionych w grupie kontenerów. |
port[] (wymagane) |
| typ |
Określa, czy adres IP jest uwidoczniony w publicznej sieci internetowej lub prywatnej sieci wirtualnej. |
"Prywatny" "Publiczny" (wymagany) |
Usługa LogAnalytics
| Nazwa |
Opis |
Wartość |
| logType (typ loga) |
Typ dziennika do użycia. |
"ContainerInsights" "ContainerInstanceLogs" |
| metadane |
Metadane analizy dzienników. |
logAnalyticsMetadata |
| Identyfikator przestrzeni roboczej (workspaceId) |
Identyfikator obszaru roboczego dla usługi Log Analytics |
ciąg (wymagany) |
| klucz przestrzeni roboczej |
Klucz obszaru roboczego na potrzeby analizy dzienników |
ciąg (wymagany) |
Port
| Nazwa |
Opis |
Wartość |
| port |
Numer portu. |
int (wymagane) |
| protokół |
Protokół skojarzony z portem. |
"TCP" "UDP" |
ZasobyLimits
| Nazwa |
Opis |
Wartość |
| procesor |
Limit procesora CPU dla tego wystąpienia kontenera. |
Int |
| Gpu |
Limit procesora GPU tego wystąpienia kontenera. |
gpuResource |
| memoryInGB (pamięć w GB) |
Limit pamięci w GB tego wystąpienia kontenera. |
Int |
ResourceRequests
| Nazwa |
Opis |
Wartość |
| procesor |
Żądanie procesora CPU tego wystąpienia kontenera. |
int (wymagane) |
| Gpu |
Żądanie procesora GPU tego wystąpienia kontenera. |
gpuResource |
| memoryInGB (pamięć w GB) |
Żądanie pamięci w GB tego wystąpienia kontenera. |
int (wymagane) |
Wymagania dotyczące zasobów
| Nazwa |
Opis |
Wartość |
| limity |
Limity zasobów tego wystąpienia kontenera. |
ZasobyLimits |
| Żądania |
Zasób żąda tego wystąpienia kontenera. |
ResourceRequests (wymagane) |
Wolumin tajny
Głośność
| Nazwa |
Opis |
Wartość |
| azureFile (plik azure) |
Wolumin usługi Azure File. |
AzureFileVolume (Wolumin Pliku) |
| emptyDir (pusty katalog) |
Pusty wolumin katalogu. |
jakikolwiek |
| gitRepo |
Wolumin repozytorium git. |
GitRepoVolume |
| nazwa |
Nazwa woluminu. |
ciąg (wymagany) |
| klucz tajny |
Wolumin tajny. |
Wolumin tajny |
WoluminMount
| Nazwa |
Opis |
Wartość |
| mountPath (ścieżka montowania) |
Ścieżka w kontenerze, w którym należy zamontować wolumin. Nie może zawierać dwukropka (:). |
ciąg (wymagany) |
| nazwa |
Nazwa instalacji woluminu. |
ciąg (wymagany) |
| readOnly (tylko do odczytu) |
Flaga wskazująca, czy instalacja woluminu jest tylko do odczytu. |
Bool |
Przykłady użycia
Moduły zweryfikowane na platformie Azure
Następujące moduły zweryfikowane platformy Azure mogą służyć do wdrażania tego typu zasobu.
Przykłady szybkiego startu platformy Azure
Poniższe szablony szybkiego startu platformy Azure zawierają przykłady Bicep na potrzeby wdrażania tego typu zasobu.
Definicja zasobu szablonu usługi ARM
Typ zasobu containerGroups można wdrożyć przy użyciu operacji docelowych:
Aby uzyskać listę zmienionych właściwości w każdej wersji interfejsu API, zobacz dziennika zmian.
Aby utworzyć zasób Microsoft.ContainerInstance/containerGroups, dodaj następujący kod JSON do szablonu.
{
"type": "Microsoft.ContainerInstance/containerGroups",
"apiVersion": "2018-10-01",
"name": "string",
"identity": {
"type": "string",
"userAssignedIdentities": {
"{customized property}": {
}
}
},
"location": "string",
"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": "int"
},
"requests": {
"cpu": "int",
"gpu": {
"count": "int",
"sku": "string"
},
"memoryInGB": "int"
}
},
"volumeMounts": [
{
"mountPath": "string",
"name": "string",
"readOnly": "bool"
}
]
}
}
],
"diagnostics": {
"logAnalytics": {
"logType": "string",
"metadata": {
"{customized property}": "string"
},
"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": {
"{customized property}": "string"
}
}
]
},
"tags": {
"{customized property}": "string"
}
}
Wartości właściwości
Microsoft.ContainerInstance/containerGroups (Grupy Kontenerów)
| Nazwa |
Opis |
Wartość |
| apiVersion (wersja interfejsu api) |
Wersja interfejsu API |
'2018-10-01' |
| tożsamość |
Tożsamość grupy kontenerów, jeśli została skonfigurowana. |
ContainerGroupIdentity (Tożsamość grupy kontenerów) |
| lokalizacja |
Lokalizacja zasobu. |
ciąg |
| nazwa |
Nazwa zasobu |
ciąg (wymagany) |
| Właściwości |
|
ContainerGroupProperties (wymagane) |
| Tagi |
Tagi zasobów |
Słownik nazw tagów i wartości. Zobacz tagi w szablonach |
| typ |
Typ zasobu |
"Microsoft.ContainerInstance/containerGroups" |
AzureFileVolume (Wolumin Pliku)
| Nazwa |
Opis |
Wartość |
| readOnly (tylko do odczytu) |
Flaga wskazująca, czy udostępniony plik platformy Azure zainstalowany jako wolumin jest tylko do odczytu. |
Bool |
| NazwaUdostępnienia |
Nazwa udziału plików platformy Azure, który ma zostać zainstalowany jako wolumin. |
ciąg (wymagany) |
| kluczKontaPrzechowywania |
Klucz dostępu konta magazynu używany do uzyskiwania dostępu do udziału plików platformy Azure. |
ciąg |
| nazwaKontaPrzechowywania |
Nazwa konta magazynu zawierającego udział plików platformy Azure. |
ciąg (wymagany) |
Komponenty10Wh5UdSchemasContainergroupidentityPropertiesUserassignedidentitiesAdditionalproperties
Kontener
| Nazwa |
Opis |
Wartość |
| nazwa |
Podana przez użytkownika nazwa wystąpienia kontenera. |
ciąg (wymagany) |
| Właściwości |
Właściwości wystąpienia kontenera. |
ContainerProperties (wymagane) |
Składnik ContainerExec
| Nazwa |
Opis |
Wartość |
| polecenie |
Polecenia do wykonania w kontenerze. |
ciąg znakowy[] |
ContainerGroupDiagnostics
| Nazwa |
Opis |
Wartość |
| logAnalytics |
Informacje analizy dzienników grupy kontenerów. |
Usługa LogAnalytics |
ContainerGroupIdentity (Tożsamość grupy kontenerów)
| Nazwa |
Opis |
Wartość |
| typ |
Typ tożsamości używany dla grupy kontenerów. Typ "SystemAssigned, UserAssigned" zawiera zarówno niejawnie utworzoną tożsamość, jak i zestaw tożsamości przypisanych przez użytkownika. Typ "Brak" spowoduje usunięcie tożsamości z grupy kontenerów. |
"Brak" "SystemAssigned" "SystemAssigned, UserAssigned" "UserAssigned" |
| tożsamości przypisane użytkownikom |
Lista tożsamości użytkowników skojarzonych z grupą kontenerów. Odwołania do klucza słownika tożsamości użytkownika będą identyfikatorami zasobów arm w postaci: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}". |
ContainerGroupIdentityUserAssignedIdentities |
ContainerGroupIdentityUserAssignedIdentities
ContainerGroupNetworkProfile (Profil sieciowy)
| Nazwa |
Opis |
Wartość |
| id |
Identyfikator profilu sieciowego. |
ciąg (wymagany) |
ContainerGroupProperties (Właściwości grupy kontenerów)
| Nazwa |
Opis |
Wartość |
| Pojemniki |
Kontenery w grupie kontenerów. |
Container[] (wymagane) |
| Diagnostyka |
Informacje diagnostyczne dla grupy kontenerów. |
ContainerGroupDiagnostics |
| dnsConfig (konfiguracja systemu dns) |
Informacje o konfiguracji DNS dla grupy kontenerów. |
DnsConfiguration |
| imageRegistryCredentials (Dane uwierzytelniające imageRegistryCredentials) |
Poświadczenia rejestru obrazów, na podstawie których jest tworzona grupa kontenerów. |
Poświadczenie ImageRegistry[] |
| adres IP |
Typ adresu IP grupy kontenerów. |
IpAddress |
| Profil sieciowy |
Informacje o profilu sieci dla grupy kontenerów. |
ContainerGroupNetworkProfile (Profil sieciowy) |
| osType (typ systemu) |
Typ systemu operacyjnego wymagany przez kontenery w grupie kontenerów. |
"Linux" "Windows" (wymagane) |
| zasadaPonownegoUruchamiania |
Uruchom ponownie zasady dla wszystkich kontenerów w grupie kontenerów.
-
Always Zawsze uruchamiaj ponownie
-
OnFailure ponowne uruchomienie po awarii
-
Never Nigdy nie uruchamiaj ponownie |
"Zawsze" "Nigdy" "OnFailure" |
| Woluminów |
Lista woluminów, które mogą być instalowane przez kontenery w tej grupie kontenerów. |
woluminu[] |
ContainerHttpGet
| Nazwa |
Opis |
Wartość |
| ścieżka |
Ścieżka do sondy. |
ciąg |
| port |
Numer portu do sondy. |
int (wymagane) |
| plan |
Schemat. |
"http" "https" |
KontenerPort (ContainerPort)
| Nazwa |
Opis |
Wartość |
| port |
Numer portu uwidoczniony w grupie kontenerów. |
int (wymagane) |
| protokół |
Protokół skojarzony z portem. |
"TCP" "UDP" |
Sonda kontenerowa
| Nazwa |
Opis |
Wartość |
| Exec |
Polecenie wykonywania do sondowania |
Składnik ContainerExec |
| failureThreshold (próg awarii) |
Próg niepowodzenia. |
Int |
| Pobieranie httpGet |
Ustawienia Http Get do sondy |
ContainerHttpGet |
| initialDelaySeconds (Sekundy początkoweOpóźnienie) |
Początkowe opóźnienie sekund. |
Int |
| okresSekundy |
Czas w sekundach. |
Int |
| successThreshold (próg sukcesu) |
Próg powodzenia. |
Int |
| timeoutSekundy |
Limit czasu sekund. |
Int |
Właściwości Kontenera
| Nazwa |
Opis |
Wartość |
| polecenie |
Polecenia do wykonania w ramach wystąpienia kontenera w formularzu exec. |
ciąg znakowy[] |
| zmienne środowiskowe |
Zmienne środowiskowe do ustawienia w wystąpieniu kontenera. |
Zmienna środowiskowa[] |
| obraz |
Nazwa obrazu użytego do utworzenia wystąpienia kontenera. |
ciąg (wymagany) |
| livenessSonda |
Sonda liveness. |
Sonda kontenerowa |
| Porty |
Uwidocznione porty w wystąpieniu kontenera. |
KontenerPort[] |
| gotowośćProbe |
Sonda gotowości. |
Sonda kontenerowa |
| zasoby |
Wymagania dotyczące zasobów wystąpienia kontenera. |
ResourceRequirements (wymagane) |
| WoluminInstalacje |
Woluminy są montowane w wystąpieniu kontenera. |
volumeMount[] |
Konfiguracja dns
| Nazwa |
Opis |
Wartość |
| nameServers (serwery nazw) |
Serwery DNS dla grupy kontenerów. |
string[] (wymagane) |
| Opcje |
Opcje DNS dla grupy kontenerów. |
ciąg |
| searchDomains (Domeny wyszukiwania) |
Domeny wyszukiwania DNS dla wyszukiwania nazwy hosta w grupie kontenerów. |
ciąg |
Zmienna środowiskowa
| Nazwa |
Opis |
Wartość |
| nazwa |
Nazwa zmiennej środowiskowej. |
ciąg (wymagany) |
| secureValue (zabezpieczona wartość) |
Wartość bezpiecznej zmiennej środowiskowej. |
ciąg |
| wartość |
Wartość zmiennej środowiskowej. |
ciąg |
GitRepoVolume
| Nazwa |
Opis |
Wartość |
| katalog |
Nazwa katalogu docelowego. Nie może zawierać ani rozpoczynać się od ".". Jeśli element "." zostanie dostarczony, katalog woluminu będzie repozytorium git. W przeciwnym razie, jeśli zostanie określony, wolumin będzie zawierać repozytorium git w podkatalogu o podanej nazwie. |
ciąg |
| repozytorium |
Adres URL repozytorium |
ciąg (wymagany) |
| rewizja |
Zatwierdź skrót dla określonej poprawki. |
ciąg |
Zasób gpu
| Nazwa |
Opis |
Wartość |
| hrabia |
Liczba zasobów procesora GPU. |
int (wymagane) |
| Numer jednostki magazynowej |
Jednostka SKU zasobu procesora GPU. |
"K80" "P100" "V100" (wymagane) |
Poświadczenia ImageRegistryCredential
| Nazwa |
Opis |
Wartość |
| hasło |
Hasło dla rejestru prywatnego. |
ciąg |
| serwer |
Serwer rejestru obrazów platformy Docker bez protokołu, takiego jak "http" i "https". |
ciąg (wymagany) |
| nazwa użytkownika |
Nazwa użytkownika rejestru prywatnego. |
ciąg (wymagany) |
Adresy IP
| Nazwa |
Opis |
Wartość |
| dnsNameLabel (etykietaNazwy dns) |
Etykieta nazwy DNS dla adresu IP. |
ciąg |
| Ip |
Adres IP uwidoczniony w publicznym Internecie. |
ciąg |
| Porty |
Lista portów uwidocznionych w grupie kontenerów. |
port[] (wymagane) |
| typ |
Określa, czy adres IP jest uwidoczniony w publicznej sieci internetowej lub prywatnej sieci wirtualnej. |
"Prywatny" "Publiczny" (wymagany) |
Usługa LogAnalytics
| Nazwa |
Opis |
Wartość |
| logType (typ loga) |
Typ dziennika do użycia. |
"ContainerInsights" "ContainerInstanceLogs" |
| metadane |
Metadane analizy dzienników. |
logAnalyticsMetadata |
| Identyfikator przestrzeni roboczej (workspaceId) |
Identyfikator obszaru roboczego dla usługi Log Analytics |
ciąg (wymagany) |
| klucz przestrzeni roboczej |
Klucz obszaru roboczego na potrzeby analizy dzienników |
ciąg (wymagany) |
Port
| Nazwa |
Opis |
Wartość |
| port |
Numer portu. |
int (wymagane) |
| protokół |
Protokół skojarzony z portem. |
"TCP" "UDP" |
ZasobyLimits
| Nazwa |
Opis |
Wartość |
| procesor |
Limit procesora CPU dla tego wystąpienia kontenera. |
Int |
| Gpu |
Limit procesora GPU tego wystąpienia kontenera. |
gpuResource |
| memoryInGB (pamięć w GB) |
Limit pamięci w GB tego wystąpienia kontenera. |
Int |
ResourceRequests
| Nazwa |
Opis |
Wartość |
| procesor |
Żądanie procesora CPU tego wystąpienia kontenera. |
int (wymagane) |
| Gpu |
Żądanie procesora GPU tego wystąpienia kontenera. |
gpuResource |
| memoryInGB (pamięć w GB) |
Żądanie pamięci w GB tego wystąpienia kontenera. |
int (wymagane) |
Wymagania dotyczące zasobów
| Nazwa |
Opis |
Wartość |
| limity |
Limity zasobów tego wystąpienia kontenera. |
ZasobyLimits |
| Żądania |
Zasób żąda tego wystąpienia kontenera. |
ResourceRequests (wymagane) |
Wolumin tajny
Głośność
| Nazwa |
Opis |
Wartość |
| azureFile (plik azure) |
Wolumin usługi Azure File. |
AzureFileVolume (Wolumin Pliku) |
| emptyDir (pusty katalog) |
Pusty wolumin katalogu. |
jakikolwiek |
| gitRepo |
Wolumin repozytorium git. |
GitRepoVolume |
| nazwa |
Nazwa woluminu. |
ciąg (wymagany) |
| klucz tajny |
Wolumin tajny. |
Wolumin tajny |
WoluminMount
| Nazwa |
Opis |
Wartość |
| mountPath (ścieżka montowania) |
Ścieżka w kontenerze, w którym należy zamontować wolumin. Nie może zawierać dwukropka (:). |
ciąg (wymagany) |
| nazwa |
Nazwa instalacji woluminu. |
ciąg (wymagany) |
| readOnly (tylko do odczytu) |
Flaga wskazująca, czy instalacja woluminu jest tylko do odczytu. |
Bool |
Przykłady użycia
Szablony szybkiego startu platformy Azure
Następujące szablony szybkiego startu platformy Azure wdrożyć ten typ zasobu.
Typ zasobu containerGroups można wdrożyć przy użyciu operacji docelowych:
Aby uzyskać listę zmienionych właściwości w każdej wersji interfejsu API, zobacz dziennika zmian.
Aby utworzyć zasób Microsoft.ContainerInstance/containerGroups, dodaj następujący program Terraform do szablonu.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.ContainerInstance/containerGroups@2018-10-01"
name = "string"
parent_id = "string"
identity {
type = "string"
identity_ids = [
"string"
]
}
location = "string"
tags = {
{customized property} = "string"
}
body = {
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 = int
}
requests = {
cpu = int
gpu = {
count = int
sku = "string"
}
memoryInGB = int
}
}
volumeMounts = [
{
mountPath = "string"
name = "string"
readOnly = bool
}
]
}
}
]
diagnostics = {
logAnalytics = {
logType = "string"
metadata = {
{customized property} = "string"
}
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 = {
{customized property} = "string"
}
}
]
}
}
}
Wartości właściwości
Microsoft.ContainerInstance/containerGroups (Grupy Kontenerów)
| Nazwa |
Opis |
Wartość |
| tożsamość |
Tożsamość grupy kontenerów, jeśli została skonfigurowana. |
ContainerGroupIdentity (Tożsamość grupy kontenerów) |
| lokalizacja |
Lokalizacja zasobu. |
ciąg |
| nazwa |
Nazwa zasobu |
ciąg (wymagany) |
| parent_id |
Identyfikator zasobu, do który ma być stosowany ten zasób rozszerzenia. |
ciąg (wymagany) |
| Właściwości |
|
ContainerGroupProperties (wymagane) |
| Tagi |
Tagi zasobów |
Słownik nazw tagów i wartości. |
| typ |
Typ zasobu |
"Microsoft.ContainerInstance/containerGroups@2018-10-01" |
AzureFileVolume (Wolumin Pliku)
| Nazwa |
Opis |
Wartość |
| readOnly (tylko do odczytu) |
Flaga wskazująca, czy udostępniony plik platformy Azure zainstalowany jako wolumin jest tylko do odczytu. |
Bool |
| NazwaUdostępnienia |
Nazwa udziału plików platformy Azure, który ma zostać zainstalowany jako wolumin. |
ciąg (wymagany) |
| kluczKontaPrzechowywania |
Klucz dostępu konta magazynu używany do uzyskiwania dostępu do udziału plików platformy Azure. |
ciąg |
| nazwaKontaPrzechowywania |
Nazwa konta magazynu zawierającego udział plików platformy Azure. |
ciąg (wymagany) |
Komponenty10Wh5UdSchemasContainergroupidentityPropertiesUserassignedidentitiesAdditionalproperties
Kontener
| Nazwa |
Opis |
Wartość |
| nazwa |
Podana przez użytkownika nazwa wystąpienia kontenera. |
ciąg (wymagany) |
| Właściwości |
Właściwości wystąpienia kontenera. |
ContainerProperties (wymagane) |
Składnik ContainerExec
| Nazwa |
Opis |
Wartość |
| polecenie |
Polecenia do wykonania w kontenerze. |
ciąg znakowy[] |
ContainerGroupDiagnostics
| Nazwa |
Opis |
Wartość |
| logAnalytics |
Informacje analizy dzienników grupy kontenerów. |
Usługa LogAnalytics |
ContainerGroupIdentity (Tożsamość grupy kontenerów)
| Nazwa |
Opis |
Wartość |
| typ |
Typ tożsamości używany dla grupy kontenerów. Typ "SystemAssigned, UserAssigned" zawiera zarówno niejawnie utworzoną tożsamość, jak i zestaw tożsamości przypisanych przez użytkownika. Typ "Brak" spowoduje usunięcie tożsamości z grupy kontenerów. |
"Brak" "SystemAssigned" "SystemAssigned, UserAssigned" "UserAssigned" |
| tożsamości przypisane użytkownikom |
Lista tożsamości użytkowników skojarzonych z grupą kontenerów. Odwołania do klucza słownika tożsamości użytkownika będą identyfikatorami zasobów arm w postaci: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}". |
ContainerGroupIdentityUserAssignedIdentities |
ContainerGroupIdentityUserAssignedIdentities
ContainerGroupNetworkProfile (Profil sieciowy)
| Nazwa |
Opis |
Wartość |
| id |
Identyfikator profilu sieciowego. |
ciąg (wymagany) |
ContainerGroupProperties (Właściwości grupy kontenerów)
| Nazwa |
Opis |
Wartość |
| Pojemniki |
Kontenery w grupie kontenerów. |
Container[] (wymagane) |
| Diagnostyka |
Informacje diagnostyczne dla grupy kontenerów. |
ContainerGroupDiagnostics |
| dnsConfig (konfiguracja systemu dns) |
Informacje o konfiguracji DNS dla grupy kontenerów. |
DnsConfiguration |
| imageRegistryCredentials (Dane uwierzytelniające imageRegistryCredentials) |
Poświadczenia rejestru obrazów, na podstawie których jest tworzona grupa kontenerów. |
Poświadczenie ImageRegistry[] |
| adres IP |
Typ adresu IP grupy kontenerów. |
IpAddress |
| Profil sieciowy |
Informacje o profilu sieci dla grupy kontenerów. |
ContainerGroupNetworkProfile (Profil sieciowy) |
| osType (typ systemu) |
Typ systemu operacyjnego wymagany przez kontenery w grupie kontenerów. |
"Linux" "Windows" (wymagane) |
| zasadaPonownegoUruchamiania |
Uruchom ponownie zasady dla wszystkich kontenerów w grupie kontenerów.
-
Always Zawsze uruchamiaj ponownie
-
OnFailure ponowne uruchomienie po awarii
-
Never Nigdy nie uruchamiaj ponownie |
"Zawsze" "Nigdy" "OnFailure" |
| Woluminów |
Lista woluminów, które mogą być instalowane przez kontenery w tej grupie kontenerów. |
woluminu[] |
ContainerHttpGet
| Nazwa |
Opis |
Wartość |
| ścieżka |
Ścieżka do sondy. |
ciąg |
| port |
Numer portu do sondy. |
int (wymagane) |
| plan |
Schemat. |
"http" "https" |
KontenerPort (ContainerPort)
| Nazwa |
Opis |
Wartość |
| port |
Numer portu uwidoczniony w grupie kontenerów. |
int (wymagane) |
| protokół |
Protokół skojarzony z portem. |
"TCP" "UDP" |
Sonda kontenerowa
| Nazwa |
Opis |
Wartość |
| Exec |
Polecenie wykonywania do sondowania |
Składnik ContainerExec |
| failureThreshold (próg awarii) |
Próg niepowodzenia. |
Int |
| Pobieranie httpGet |
Ustawienia Http Get do sondy |
ContainerHttpGet |
| initialDelaySeconds (Sekundy początkoweOpóźnienie) |
Początkowe opóźnienie sekund. |
Int |
| okresSekundy |
Czas w sekundach. |
Int |
| successThreshold (próg sukcesu) |
Próg powodzenia. |
Int |
| timeoutSekundy |
Limit czasu sekund. |
Int |
Właściwości Kontenera
| Nazwa |
Opis |
Wartość |
| polecenie |
Polecenia do wykonania w ramach wystąpienia kontenera w formularzu exec. |
ciąg znakowy[] |
| zmienne środowiskowe |
Zmienne środowiskowe do ustawienia w wystąpieniu kontenera. |
Zmienna środowiskowa[] |
| obraz |
Nazwa obrazu użytego do utworzenia wystąpienia kontenera. |
ciąg (wymagany) |
| livenessSonda |
Sonda liveness. |
Sonda kontenerowa |
| Porty |
Uwidocznione porty w wystąpieniu kontenera. |
KontenerPort[] |
| gotowośćProbe |
Sonda gotowości. |
Sonda kontenerowa |
| zasoby |
Wymagania dotyczące zasobów wystąpienia kontenera. |
ResourceRequirements (wymagane) |
| WoluminInstalacje |
Woluminy są montowane w wystąpieniu kontenera. |
volumeMount[] |
Konfiguracja dns
| Nazwa |
Opis |
Wartość |
| nameServers (serwery nazw) |
Serwery DNS dla grupy kontenerów. |
string[] (wymagane) |
| Opcje |
Opcje DNS dla grupy kontenerów. |
ciąg |
| searchDomains (Domeny wyszukiwania) |
Domeny wyszukiwania DNS dla wyszukiwania nazwy hosta w grupie kontenerów. |
ciąg |
Zmienna środowiskowa
| Nazwa |
Opis |
Wartość |
| nazwa |
Nazwa zmiennej środowiskowej. |
ciąg (wymagany) |
| secureValue (zabezpieczona wartość) |
Wartość bezpiecznej zmiennej środowiskowej. |
ciąg |
| wartość |
Wartość zmiennej środowiskowej. |
ciąg |
GitRepoVolume
| Nazwa |
Opis |
Wartość |
| katalog |
Nazwa katalogu docelowego. Nie może zawierać ani rozpoczynać się od ".". Jeśli element "." zostanie dostarczony, katalog woluminu będzie repozytorium git. W przeciwnym razie, jeśli zostanie określony, wolumin będzie zawierać repozytorium git w podkatalogu o podanej nazwie. |
ciąg |
| repozytorium |
Adres URL repozytorium |
ciąg (wymagany) |
| rewizja |
Zatwierdź skrót dla określonej poprawki. |
ciąg |
Zasób gpu
| Nazwa |
Opis |
Wartość |
| hrabia |
Liczba zasobów procesora GPU. |
int (wymagane) |
| Numer jednostki magazynowej |
Jednostka SKU zasobu procesora GPU. |
"K80" "P100" "V100" (wymagane) |
Poświadczenia ImageRegistryCredential
| Nazwa |
Opis |
Wartość |
| hasło |
Hasło dla rejestru prywatnego. |
ciąg |
| serwer |
Serwer rejestru obrazów platformy Docker bez protokołu, takiego jak "http" i "https". |
ciąg (wymagany) |
| nazwa użytkownika |
Nazwa użytkownika rejestru prywatnego. |
ciąg (wymagany) |
Adresy IP
| Nazwa |
Opis |
Wartość |
| dnsNameLabel (etykietaNazwy dns) |
Etykieta nazwy DNS dla adresu IP. |
ciąg |
| Ip |
Adres IP uwidoczniony w publicznym Internecie. |
ciąg |
| Porty |
Lista portów uwidocznionych w grupie kontenerów. |
port[] (wymagane) |
| typ |
Określa, czy adres IP jest uwidoczniony w publicznej sieci internetowej lub prywatnej sieci wirtualnej. |
"Prywatny" "Publiczny" (wymagany) |
Usługa LogAnalytics
| Nazwa |
Opis |
Wartość |
| logType (typ loga) |
Typ dziennika do użycia. |
"ContainerInsights" "ContainerInstanceLogs" |
| metadane |
Metadane analizy dzienników. |
logAnalyticsMetadata |
| Identyfikator przestrzeni roboczej (workspaceId) |
Identyfikator obszaru roboczego dla usługi Log Analytics |
ciąg (wymagany) |
| klucz przestrzeni roboczej |
Klucz obszaru roboczego na potrzeby analizy dzienników |
ciąg (wymagany) |
Port
| Nazwa |
Opis |
Wartość |
| port |
Numer portu. |
int (wymagane) |
| protokół |
Protokół skojarzony z portem. |
"TCP" "UDP" |
ZasobyLimits
| Nazwa |
Opis |
Wartość |
| procesor |
Limit procesora CPU dla tego wystąpienia kontenera. |
Int |
| Gpu |
Limit procesora GPU tego wystąpienia kontenera. |
gpuResource |
| memoryInGB (pamięć w GB) |
Limit pamięci w GB tego wystąpienia kontenera. |
Int |
ResourceRequests
| Nazwa |
Opis |
Wartość |
| procesor |
Żądanie procesora CPU tego wystąpienia kontenera. |
int (wymagane) |
| Gpu |
Żądanie procesora GPU tego wystąpienia kontenera. |
gpuResource |
| memoryInGB (pamięć w GB) |
Żądanie pamięci w GB tego wystąpienia kontenera. |
int (wymagane) |
Wymagania dotyczące zasobów
| Nazwa |
Opis |
Wartość |
| limity |
Limity zasobów tego wystąpienia kontenera. |
ZasobyLimits |
| Żądania |
Zasób żąda tego wystąpienia kontenera. |
ResourceRequests (wymagane) |
Wolumin tajny
Głośność
| Nazwa |
Opis |
Wartość |
| azureFile (plik azure) |
Wolumin usługi Azure File. |
AzureFileVolume (Wolumin Pliku) |
| emptyDir (pusty katalog) |
Pusty wolumin katalogu. |
jakikolwiek |
| gitRepo |
Wolumin repozytorium git. |
GitRepoVolume |
| nazwa |
Nazwa woluminu. |
ciąg (wymagany) |
| klucz tajny |
Wolumin tajny. |
Wolumin tajny |
WoluminMount
| Nazwa |
Opis |
Wartość |
| mountPath (ścieżka montowania) |
Ścieżka w kontenerze, w którym należy zamontować wolumin. Nie może zawierać dwukropka (:). |
ciąg (wymagany) |
| nazwa |
Nazwa instalacji woluminu. |
ciąg (wymagany) |
| readOnly (tylko do odczytu) |
Flaga wskazująca, czy instalacja woluminu jest tylko do odczytu. |
Bool |
Przykłady użycia
Podstawowy przykład wdrażania wystąpienia grupy kontenerów platformy Azure.
terraform {
required_providers {
azapi = {
source = "Azure/azapi"
}
}
}
provider "azapi" {
skip_provider_registration = false
}
variable "resource_name" {
type = string
default = "acctest0001"
}
variable "location" {
type = string
default = "westeurope"
}
resource "azapi_resource" "resourceGroup" {
type = "Microsoft.Resources/resourceGroups@2020-06-01"
name = var.resource_name
location = var.location
}
resource "azapi_resource" "containerGroup" {
type = "Microsoft.ContainerInstance/containerGroups@2023-05-01"
parent_id = azapi_resource.resourceGroup.id
name = var.resource_name
location = var.location
body = {
properties = {
containers = [
{
name = "hw"
properties = {
command = [
]
environmentVariables = [
]
image = "ubuntu:20.04"
ports = [
{
port = 80
protocol = "TCP"
},
]
resources = {
requests = {
cpu = 0.5
memoryInGB = 0.5
}
}
}
},
]
initContainers = [
]
ipAddress = {
autoGeneratedDomainNameLabelScope = "Unsecure"
ports = [
{
port = 80
protocol = "TCP"
},
]
type = "Public"
}
osType = "Linux"
restartPolicy = "Always"
volumes = [
]
}
tags = {
environment = "Testing"
}
zones = [
]
}
schema_validation_enabled = false
response_export_values = ["*"]
}
Moduły zweryfikowane na platformie Azure
Następujące moduły zweryfikowane platformy Azure mogą służyć do wdrażania tego typu zasobu.