Поделиться через


Container Groups - Create Or Update

Создайте или обновите группы контейнеров с указанными конфигурациями.

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups/{containerGroupName}?api-version=2023-05-01

Параметры URI

Имя В Обязательно Тип Описание
containerGroupName
path True

string

Имя группы контейнеров.

resourceGroupName
path True

string

Имя группы ресурсов.

subscriptionId
path True

string

Учетные данные подписки, которые однозначно определяют подписку Microsoft Azure. Идентификатор подписки входит в состав URI для каждого вызова службы.

api-version
query True

string

Версия API клиента

Текст запроса

Имя Обязательно Тип Описание
properties.containers True

Container[]

Контейнеры в группе контейнеров.

properties.osType True

OperatingSystemTypes

Тип операционной системы, необходимый контейнерам в группе контейнеров.

identity

ContainerGroupIdentity

Удостоверение группы контейнеров, если настроено.

location

string

Расположение ресурса.

properties.confidentialComputeProperties

ConfidentialComputeProperties

Свойства для конфиденциальной группы контейнеров

properties.diagnostics

ContainerGroupDiagnostics

Диагностические сведения для группы контейнеров.

properties.dnsConfig

DnsConfiguration

Сведения о конфигурации DNS для группы контейнеров.

properties.encryptionProperties

EncryptionProperties

Свойства шифрования для группы контейнеров.

properties.extensions

DeploymentExtensionSpec[]

расширения, используемые виртуальным kubelet

properties.imageRegistryCredentials

ImageRegistryCredential[]

Учетные данные реестра образов, из которых создается группа контейнеров.

properties.initContainers

InitContainerDefinition[]

Контейнеры инициализации для группы контейнеров.

properties.ipAddress

IpAddress

Тип IP-адреса группы контейнеров.

properties.priority

ContainerGroupPriority

Приоритет группы контейнеров.

properties.restartPolicy

ContainerGroupRestartPolicy

Перезапустите политику для всех контейнеров в группе контейнеров.

  • Always Всегда перезапуск
  • OnFailure перезапуск при сбое
  • Never никогда не перезапускать
properties.sku

ContainerGroupSku

Номер SKU для группы контейнеров.

properties.subnetIds

ContainerGroupSubnetId[]

Идентификаторы ресурсов подсети для группы контейнеров.

properties.volumes

Volume[]

Список томов, которые могут быть подключены контейнерами в этой группе контейнеров.

tags

object

Теги ресурсов.

zones

string[]

Зоны для группы контейнеров.

Ответы

Имя Тип Описание
200 OK

ContainerGroup

ХОРОШО

201 Created

ContainerGroup

Создано — создается группа контейнеров.

Other Status Codes

CloudError

Ответ на ошибку, описывающий причину сбоя операции.

Безопасность

azure_auth

Поток OAuth2 Azure Active Directory

Тип: oauth2
Flow: implicit
URL-адрес авторизации: https://login.microsoftonline.com/common/oauth2/authorize

Области

Имя Описание
user_impersonation Олицетворения учетной записи пользователя

Примеры

ConfidentialContainerGroup
ContainerGroupCreateWithExtensions
ContainerGroupsCreateOrUpdate
ContainerGroupsCreateWithPriority
ContainerGroupWithEncryptionProperties

ConfidentialContainerGroup

Образец запроса

PUT https://management.azure.com/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroups/demo1?api-version=2023-05-01

{
  "location": "westeurope",
  "properties": {
    "containers": [
      {
        "name": "accdemo",
        "properties": {
          "command": [],
          "environmentVariables": [],
          "image": "confiimage",
          "ports": [
            {
              "port": 8000
            }
          ],
          "resources": {
            "requests": {
              "cpu": 1,
              "memoryInGB": 1.5
            }
          },
          "securityContext": {
            "privileged": false,
            "capabilities": {
              "add": [
                "CAP_NET_ADMIN"
              ]
            }
          }
        }
      }
    ],
    "imageRegistryCredentials": [],
    "ipAddress": {
      "ports": [
        {
          "protocol": "TCP",
          "port": 8000
        }
      ],
      "type": "Public"
    },
    "osType": "Linux",
    "sku": "Confidential",
    "confidentialComputeProperties": {
      "ccePolicy": "eyJhbGxvd19hbGwiOiB0cnVlLCAiY29udGFpbmVycyI6IHsibGVuZ3RoIjogMCwgImVsZW1lbnRzIjogbnVsbH19"
    }
  }
}

Пример ответа

{
  "properties": {
    "sku": "Confidential",
    "provisioningState": "Succeeded",
    "containers": [
      {
        "name": "accdemo",
        "properties": {
          "image": "confiimage",
          "command": [],
          "ports": [
            {
              "port": 8000
            }
          ],
          "environmentVariables": [],
          "resources": {
            "requests": {
              "memoryInGB": 1.5,
              "cpu": 1
            }
          },
          "securityContext": {
            "privileged": false,
            "capabilities": {
              "add": [
                "CAP_NET_ADMIN"
              ]
            }
          }
        }
      }
    ],
    "ipAddress": {
      "ports": [
        {
          "protocol": "TCP",
          "port": 8000
        }
      ],
      "type": "Public"
    },
    "initContainers": [],
    "imageRegistryCredentials": [],
    "osType": "Linux",
    "instanceView": {
      "events": [],
      "state": "Running"
    },
    "confidentialComputeProperties": {
      "ccePolicy": "eyJhbGxvd19hbGwiOiB0cnVlLCAiY29udGFpbmVycyI6IHsibGVuZ3RoIjogMCwgImVsZW1lbnRzIjogbnVsbH19"
    }
  },
  "id": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/test-rg/providers/Microsoft.ContainerInstance/containerGroups/demo1",
  "name": "demo1",
  "type": "Microsoft.ContainerInstance/containerGroups",
  "location": "westeurope"
}
{
  "properties": {
    "sku": "Confidential",
    "provisioningState": "Succeeded",
    "containers": [
      {
        "name": "accdemo",
        "properties": {
          "image": "confiimage",
          "command": [],
          "ports": [
            {
              "port": 8000
            }
          ],
          "environmentVariables": [],
          "resources": {
            "requests": {
              "memoryInGB": 1.5,
              "cpu": 1
            }
          },
          "securityContext": {
            "privileged": false,
            "capabilities": {
              "add": [
                "CAP_NET_ADMIN"
              ]
            }
          }
        }
      }
    ],
    "ipAddress": {
      "ports": [
        {
          "protocol": "TCP",
          "port": 8000
        }
      ],
      "type": "Public"
    },
    "initContainers": [],
    "imageRegistryCredentials": [],
    "osType": "Linux",
    "instanceView": {
      "events": [],
      "state": "Running"
    },
    "confidentialComputeProperties": {
      "ccePolicy": "eyJhbGxvd19hbGwiOiB0cnVlLCAiY29udGFpbmVycyI6IHsibGVuZ3RoIjogMCwgImVsZW1lbnRzIjogbnVsbH19"
    }
  },
  "id": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/test-rg/providers/Microsoft.ContainerInstance/containerGroups/demo1",
  "name": "demo1",
  "type": "Microsoft.ContainerInstance/containerGroups",
  "location": "westeurope"
}

ContainerGroupCreateWithExtensions

Образец запроса

PUT https://management.azure.com/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroups/demo1?api-version=2023-05-01

{
  "location": "eastus2",
  "properties": {
    "containers": [
      {
        "name": "demo1",
        "properties": {
          "command": [],
          "environmentVariables": [],
          "image": "nginx",
          "ports": [
            {
              "port": 80
            }
          ],
          "resources": {
            "requests": {
              "cpu": 1,
              "memoryInGB": 1.5
            }
          }
        }
      }
    ],
    "imageRegistryCredentials": [],
    "ipAddress": {
      "ports": [
        {
          "protocol": "TCP",
          "port": 80
        }
      ],
      "type": "Private"
    },
    "osType": "Linux",
    "subnetIds": [
      {
        "id": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-rg-vnet/subnets/test-subnet"
      }
    ],
    "extensions": [
      {
        "name": "kube-proxy",
        "properties": {
          "extensionType": "kube-proxy",
          "version": "1.0",
          "settings": {
            "clusterCidr": "10.240.0.0/16",
            "kubeVersion": "v1.9.10"
          },
          "protectedSettings": {
            "kubeConfig": "<kubeconfig encoded string>"
          }
        }
      },
      {
        "name": "vk-realtime-metrics",
        "properties": {
          "extensionType": "realtime-metrics",
          "version": "1.0"
        }
      }
    ]
  }
}

Пример ответа

{
  "properties": {
    "sku": "Standard",
    "provisioningState": "Pending",
    "containers": [
      {
        "name": "demo1",
        "properties": {
          "image": "nginx",
          "command": [],
          "ports": [
            {
              "port": 80
            }
          ],
          "environmentVariables": [],
          "resources": {
            "requests": {
              "memoryInGB": 1.5,
              "cpu": 1
            }
          }
        }
      }
    ],
    "initContainers": [],
    "extensions": [
      {
        "name": "kube-proxy",
        "properties": {
          "extensionType": "kube-proxy",
          "version": "1.0",
          "settings": {
            "clusterCidr": "10.240.0.0/16",
            "kubeVersion": "v1.9.10"
          }
        }
      },
      {
        "name": "vk-realtime-metrics",
        "properties": {
          "extensionType": "realtime-metrics",
          "version": "1.0"
        }
      }
    ],
    "imageRegistryCredentials": [],
    "osType": "Linux",
    "instanceView": {
      "events": [],
      "state": "Pending"
    },
    "subnetIds": [
      {
        "id": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-rg-vnet/subnets/test-subnet"
      }
    ]
  },
  "id": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/test-rg/providers/Microsoft.ContainerInstance/containerGroups/demo1",
  "name": "demo1",
  "type": "Microsoft.ContainerInstance/containerGroups",
  "location": "eastus2"
}
{
  "properties": {
    "sku": "Standard",
    "provisioningState": "Pending",
    "containers": [
      {
        "name": "demo1",
        "properties": {
          "image": "nginx",
          "command": [],
          "ports": [
            {
              "port": 80
            }
          ],
          "environmentVariables": [],
          "resources": {
            "requests": {
              "memoryInGB": 1.5,
              "cpu": 1
            }
          }
        }
      }
    ],
    "initContainers": [],
    "extensions": [
      {
        "name": "kube-proxy",
        "properties": {
          "extensionType": "kube-proxy",
          "version": "1.0",
          "settings": {
            "clusterCidr": "10.240.0.0/16",
            "kubeVersion": "v1.9.10"
          }
        }
      },
      {
        "name": "vk-realtime-metrics",
        "properties": {
          "extensionType": "realtime-metrics",
          "version": "1.0"
        }
      }
    ],
    "imageRegistryCredentials": [],
    "osType": "Linux",
    "instanceView": {
      "events": [],
      "state": "Running"
    },
    "subnetIds": [
      {
        "id": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-rg-vnet/subnets/test-subnet"
      }
    ]
  },
  "id": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/test-rg/providers/Microsoft.ContainerInstance/containerGroups/demo1",
  "name": "demo1",
  "type": "Microsoft.ContainerInstance/containerGroups",
  "location": "eastus2"
}

ContainerGroupsCreateOrUpdate

Образец запроса

PUT https://management.azure.com/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroups/demo1?api-version=2023-05-01

{
  "location": "west us",
  "identity": {
    "type": "SystemAssigned, UserAssigned",
    "userAssignedIdentities": {
      "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity-name": {}
    }
  },
  "properties": {
    "containers": [
      {
        "name": "demo1",
        "properties": {
          "command": [],
          "environmentVariables": [],
          "image": "nginx",
          "ports": [
            {
              "port": 80
            }
          ],
          "resources": {
            "requests": {
              "cpu": 1,
              "memoryInGB": 1.5,
              "gpu": {
                "count": 1,
                "sku": "K80"
              }
            }
          },
          "volumeMounts": [
            {
              "name": "volume1",
              "mountPath": "/mnt/volume1",
              "readOnly": false
            },
            {
              "name": "volume2",
              "mountPath": "/mnt/volume2",
              "readOnly": false
            },
            {
              "name": "volume3",
              "mountPath": "/mnt/volume3",
              "readOnly": true
            }
          ]
        }
      }
    ],
    "diagnostics": {
      "logAnalytics": {
        "workspaceId": "workspaceid",
        "workspaceKey": "workspaceKey",
        "logType": "ContainerInsights",
        "metadata": {
          "test-key": "test-metadata-value"
        },
        "workspaceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/rg/providers/microsoft.operationalinsights/workspaces/workspace"
      }
    },
    "subnetIds": [
      {
        "id": "[resourceId('Microsoft.Network/virtualNetworks/subnets', parameters('vnetName'), parameters('subnetName'))]"
      }
    ],
    "dnsConfig": {
      "nameServers": [
        "1.1.1.1"
      ],
      "searchDomains": "cluster.local svc.cluster.local",
      "options": "ndots:2"
    },
    "imageRegistryCredentials": [],
    "ipAddress": {
      "ports": [
        {
          "protocol": "TCP",
          "port": 80
        }
      ],
      "type": "Public",
      "dnsNameLabel": "dnsnamelabel1",
      "autoGeneratedDomainNameLabelScope": "Unsecure"
    },
    "osType": "Linux",
    "volumes": [
      {
        "name": "volume1",
        "azureFile": {
          "shareName": "shareName",
          "storageAccountName": "accountName",
          "storageAccountKey": "accountKey"
        }
      },
      {
        "name": "volume2",
        "emptyDir": {}
      },
      {
        "name": "volume3",
        "secret": {
          "secretKey1": "SecretValue1InBase64",
          "secretKey2": "SecretValue2InBase64"
        }
      }
    ]
  }
}

Пример ответа

{
  "id": "/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroups/demo1",
  "location": "WestUs",
  "zones": [
    "1"
  ],
  "name": "demo1",
  "properties": {
    "containers": [
      {
        "name": "demo1",
        "properties": {
          "command": [],
          "environmentVariables": [],
          "image": "nginx",
          "ports": [
            {
              "port": 80
            }
          ],
          "resources": {
            "requests": {
              "cpu": 1,
              "memoryInGB": 1.5,
              "gpu": {
                "count": 1,
                "sku": "K80"
              }
            }
          },
          "volumeMounts": [
            {
              "name": "volume1",
              "mountPath": "/mnt/volume1",
              "readOnly": false
            },
            {
              "name": "volume2",
              "mountPath": "/mnt/volume2",
              "readOnly": false
            },
            {
              "name": "volume3",
              "mountPath": "/mnt/volume3",
              "readOnly": true
            }
          ]
        }
      }
    ],
    "diagnostics": {
      "logAnalytics": {
        "workspaceId": "workspaceid"
      }
    },
    "dnsConfig": {
      "nameServers": [
        "1.1.1.1"
      ],
      "searchDomains": "cluster.local svc.cluster.local",
      "options": "ndots:2"
    },
    "imageRegistryCredentials": [],
    "ipAddress": {
      "ip": "10.0.0.1",
      "ports": [
        {
          "port": 80,
          "protocol": "TCP"
        }
      ],
      "type": "Public",
      "dnsNameLabel": "dnsnamelabel1",
      "autoGeneratedDomainNameLabelScope": "Unsecure",
      "fqdn": "dnsnamelabel1.azure-container.io"
    },
    "osType": "Linux",
    "provisioningState": "Succeeded",
    "volumes": [
      {
        "name": "volume1",
        "azureFile": {
          "shareName": "shareName",
          "storageAccountName": "accountName"
        }
      },
      {
        "name": "volume2",
        "emptyDir": {}
      },
      {
        "name": "volume3",
        "secret": {}
      }
    ]
  },
  "type": "Microsoft.ContainerInstance/containerGroups"
}
{
  "id": "/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroups/demo1",
  "location": "WestUs",
  "zones": [
    "1"
  ],
  "name": "demo1",
  "properties": {
    "containers": [
      {
        "name": "demo1",
        "properties": {
          "command": [],
          "environmentVariables": [],
          "image": "nginx",
          "ports": [
            {
              "port": 80
            }
          ],
          "resources": {
            "requests": {
              "cpu": 1,
              "memoryInGB": 1.5,
              "gpu": {
                "count": 1,
                "sku": "K80"
              }
            }
          },
          "volumeMounts": [
            {
              "name": "volume1",
              "mountPath": "/mnt/volume1",
              "readOnly": false
            },
            {
              "name": "volume2",
              "mountPath": "/mnt/volume2",
              "readOnly": false
            },
            {
              "name": "volume3",
              "mountPath": "/mnt/volume3",
              "readOnly": true
            }
          ]
        }
      }
    ],
    "dnsConfig": {
      "nameServers": [
        "1.1.1.1"
      ]
    },
    "imageRegistryCredentials": [],
    "ipAddress": {
      "ip": "10.0.0.1",
      "ports": [
        {
          "port": 80,
          "protocol": "TCP"
        }
      ],
      "type": "Public",
      "dnsNameLabel": "dnsnamelabel1",
      "autoGeneratedDomainNameLabelScope": "Unsecure",
      "fqdn": "dnsnamelabel1.azure-container.io"
    },
    "osType": "Linux",
    "provisioningState": "Succeeded",
    "volumes": [
      {
        "name": "volume1",
        "azureFile": {
          "shareName": "shareName",
          "storageAccountName": "accountName"
        }
      },
      {
        "name": "volume2",
        "emptyDir": {}
      },
      {
        "name": "volume3",
        "secret": {}
      }
    ]
  },
  "type": "Microsoft.ContainerInstance/containerGroups"
}

ContainerGroupsCreateWithPriority

Образец запроса

PUT https://management.azure.com/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroups/demo1?api-version=2023-05-01

{
  "properties": {
    "sku": "Standard",
    "containers": [
      {
        "name": "test-container-001",
        "properties": {
          "image": "alpine:latest",
          "command": [
            "/bin/sh",
            "-c",
            "sleep 10"
          ],
          "resources": {
            "requests": {
              "memoryInGB": 1,
              "cpu": 1
            }
          }
        }
      }
    ],
    "restartPolicy": "Never",
    "osType": "Linux",
    "priority": "Spot"
  },
  "location": "eastus"
}

Пример ответа

{
  "properties": {
    "sku": "Standard",
    "provisioningState": "Succeeded",
    "containers": [
      {
        "name": "test-container-001",
        "properties": {
          "image": "alpine:latest",
          "command": [
            "/bin/sh",
            "-c",
            "sleep 10"
          ],
          "ports": [],
          "environmentVariables": [],
          "resources": {
            "requests": {
              "memoryInGB": 1,
              "cpu": 1
            }
          }
        }
      }
    ],
    "initContainers": [],
    "restartPolicy": "Never",
    "osType": "Linux",
    "instanceView": {
      "events": [],
      "state": "Succeeded"
    },
    "priority": "Spot"
  },
  "id": "/subscriptions/subId/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroups/demo1",
  "name": "demo1",
  "type": "Microsoft.ContainerInstance/containerGroups",
  "location": "eastus"
}
{
  "properties": {
    "sku": "Standard",
    "provisioningState": "Created",
    "containers": [
      {
        "name": "test-container-001",
        "properties": {
          "image": "alpine:latest",
          "command": [
            "/bin/sh",
            "-c",
            "sleep 10"
          ],
          "ports": [],
          "environmentVariables": [],
          "resources": {
            "requests": {
              "memoryInGB": 1,
              "cpu": 1
            }
          }
        }
      }
    ],
    "initContainers": [],
    "restartPolicy": "Never",
    "osType": "Linux",
    "instanceView": {
      "events": [],
      "state": "Created"
    },
    "priority": "Spot"
  },
  "id": "/subscriptions/subId/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroups/demo1",
  "name": "demo1",
  "type": "Microsoft.ContainerInstance/containerGroups",
  "location": "eastus"
}

ContainerGroupWithEncryptionProperties

Образец запроса

PUT https://management.azure.com/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroups/demo1?api-version=2023-05-01

{
  "location": "eastus2",
  "identity": {
    "type": "UserAssigned",
    "userAssignedIdentities": {
      "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/container-group-identity": {}
    }
  },
  "properties": {
    "containers": [
      {
        "name": "demo1",
        "properties": {
          "command": [],
          "environmentVariables": [],
          "image": "nginx",
          "ports": [
            {
              "port": 80
            }
          ],
          "resources": {
            "requests": {
              "cpu": 1,
              "memoryInGB": 1.5
            }
          }
        }
      }
    ],
    "imageRegistryCredentials": [],
    "ipAddress": {
      "ports": [
        {
          "protocol": "TCP",
          "port": 80
        }
      ],
      "type": "Public"
    },
    "osType": "Linux",
    "encryptionProperties": {
      "vaultBaseUrl": "https://testkeyvault.vault.azure.net",
      "keyName": "test-key",
      "keyVersion": "<key version>",
      "identity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/container-group-identity"
    }
  }
}

Пример ответа

{
  "properties": {
    "sku": "Standard",
    "encryptionProperties": {
      "vaultBaseUrl": "https://testkeyvault.vault.azure.net/",
      "keyName": "test-key",
      "keyVersion": "<key version>",
      "identity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/container-group-identity"
    },
    "provisioningState": "Pending",
    "containers": [
      {
        "name": "demo1",
        "properties": {
          "image": "nginx",
          "command": [],
          "ports": [
            {
              "port": 80
            }
          ],
          "environmentVariables": [],
          "resources": {
            "requests": {
              "memoryInGB": 1.5,
              "cpu": 1
            }
          }
        }
      }
    ],
    "initContainers": [],
    "imageRegistryCredentials": [],
    "ipAddress": {
      "ports": [
        {
          "protocol": "TCP",
          "port": 80
        }
      ],
      "type": "Public"
    },
    "osType": "Linux",
    "instanceView": {
      "events": [],
      "state": "Pending"
    }
  },
  "identity": {
    "userAssignedIdentities": {
      "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/container-group-identity": {
        "principalId": "<principal id>",
        "clientId": "<client id>"
      }
    },
    "tenantId": "<tenant id>",
    "type": "UserAssigned"
  },
  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test-rg/providers/Microsoft.ContainerInstance/containerGroups/demo1",
  "name": "demo1",
  "type": "Microsoft.ContainerInstance/containerGroups",
  "location": "eastus2"
}
{
  "properties": {
    "sku": "Standard",
    "encryptionProperties": {
      "vaultBaseUrl": "https://testkeyvault.vault.azure.net/",
      "keyName": "test-key",
      "keyVersion": "key version",
      "identity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/container-group-identity"
    },
    "provisioningState": "Running",
    "containers": [
      {
        "name": "demo1",
        "properties": {
          "image": "nginx",
          "command": [],
          "ports": [
            {
              "port": 80
            }
          ],
          "environmentVariables": [],
          "resources": {
            "requests": {
              "memoryInGB": 1.5,
              "cpu": 1
            }
          }
        }
      }
    ],
    "initContainers": [],
    "imageRegistryCredentials": [],
    "ipAddress": {
      "ports": [
        {
          "protocol": "TCP",
          "port": 80
        }
      ],
      "type": "Public"
    },
    "osType": "Linux",
    "instanceView": {
      "events": [],
      "state": "Pending"
    }
  },
  "identity": {
    "userAssignedIdentities": {
      "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/container-group-identity": {
        "principalId": "<principal id>",
        "clientId": "<client id>"
      }
    },
    "tenantId": "<tenant id>",
    "type": "UserAssigned"
  },
  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test-rg/providers/Microsoft.ContainerInstance/containerGroups/demo1",
  "name": "demo1",
  "type": "Microsoft.ContainerInstance/containerGroups",
  "location": "eastus2"
}

Определения

Имя Описание
AzureFileVolume

Свойства тома файлов Azure. Общие папки Azure подключены как тома.

CloudError

Ответ об ошибке службы экземпляра контейнера.

CloudErrorBody

Ответ об ошибке службы экземпляра контейнера.

ConfidentialComputeProperties

Свойства для конфиденциальной группы контейнеров

Container

Экземпляр контейнера.

ContainerExec

Команда выполнения контейнера для проверки активности или готовности

ContainerGroup

Группа контейнеров.

ContainerGroupDiagnostics

Сведения о диагностике группы контейнеров.

ContainerGroupIdentity

Удостоверение для группы контейнеров.

ContainerGroupIpAddressType

Указывает, предоставляется ли IP-адрес общедоступному Интернету или частной виртуальной сети.

ContainerGroupNetworkProtocol

Протокол, связанный с портом.

ContainerGroupPriority

Приоритет группы контейнеров.

ContainerGroupProperties.properties.InstanceView

Представление экземпляра группы контейнеров. Допустимо только в ответе.

ContainerGroupRestartPolicy

Перезапустите политику для всех контейнеров в группе контейнеров.

  • Always Всегда перезапуск
  • OnFailure перезапуск при сбое
  • Never никогда не перезапускать
ContainerGroupSku

Номер SKU группы контейнеров.

ContainerGroupSubnetId

Сведения о подсети группы контейнеров.

ContainerHttpGet

Параметры Http Get контейнера для проверки активности или готовности

ContainerNetworkProtocol

Протокол, связанный с портом.

ContainerPort

Порт, предоставляемый в экземпляре контейнера.

ContainerProbe

Проба контейнера для активности или готовности

ContainerState

Состояние экземпляра контейнера.

DeploymentExtensionSpec

К развертыванию добавляются боковики расширений.

DnsConfiguration

Конфигурация DNS для группы контейнеров.

dnsNameLabelReusePolicy

Значение, представляющее перечисление безопасности. Значение "Незащищено" является значением по умолчанию, если не выбрано и означает, что метка доменного имени объекта не защищена от поглощения поддомена. Значение TenantReuse — это значение по умолчанию, если выбрано и означает, что метка доменного имени объекта может использоваться повторно в одном клиенте. Значение SubscriptionReuse означает, что метка доменного имени объекта может использоваться повторно в той же подписке. Значение ResourceGroupReuse означает, что метка доменного имени объекта может использоваться повторно в одной группе ресурсов. Значение NoReuse означает, что метка доменного имени объекта не может использоваться повторно в одной группе ресурсов, подписке или клиенте.

EmptyDirVolume

Пустой том каталога.

EncryptionProperties

Свойства шифрования группы контейнеров.

EnvironmentVariable

Переменная среды, заданная в экземпляре контейнера.

Event

Событие группы контейнеров или экземпляра контейнера.

GitRepoVolume

Представляет том, заполненный содержимым репозитория Git

GpuResource

Ресурс GPU.

GpuSku

Номер SKU ресурса GPU.

HttpHeader

Заголовок HTTP.

ImageRegistryCredential

Учетные данные реестра образов.

InitContainerDefinition

Определение контейнера init.

InitContainerPropertiesDefinition.InstanceView

Представление экземпляра контейнера init. Допустимо только в ответе.

InstanceView

Представление экземпляра экземпляра экземпляра контейнера. Допустимо только в ответе.

IpAddress

IP-адрес группы контейнеров.

LogAnalytics

Сведения о log analytics группы контейнеров.

LogAnalyticsLogType

Используемый тип журнала.

OperatingSystemTypes

Тип операционной системы, необходимый контейнерам в группе контейнеров.

Port

Порт, предоставляемый в группе контейнеров.

ResourceIdentityType

Тип удостоверения, используемого для группы контейнеров. Тип SystemAssigned, UserAssigned включает как неявное созданное удостоверение, так и набор назначенных пользователем удостоверений. Тип None удаляет все удостоверения из группы контейнеров.

ResourceLimits

Ограничения ресурсов.

ResourceRequests

Запросы ресурсов.

ResourceRequirements

Требования к ресурсам.

Scheme

Схема.

SecurityContextCapabilitiesDefinition

Возможности добавления или удаления из контейнера.

SecurityContextDefinition

Контекст безопасности контейнера.

UserAssignedIdentities

Список удостоверений пользователей, связанных с группой контейнеров. Ссылки на ключ словаря удостоверений пользователя будут идентификаторами ресурсов ARM в форме: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}".

Volume

Свойства тома.

VolumeMount

Свойства подключения тома.

AzureFileVolume

Свойства тома файлов Azure. Общие папки Azure подключены как тома.

Имя Тип Описание
readOnly

boolean

Флаг, указывающий, подключен ли общий файл Azure в качестве тома только для чтения.

shareName

string

Имя общей папки Azure, подключенной в качестве тома.

storageAccountKey

string

Ключ доступа к учетной записи хранения, используемый для доступа к общей папке Azure.

storageAccountName

string

Имя учетной записи хранения, содержащей общую папку Azure.

CloudError

Ответ об ошибке службы экземпляра контейнера.

Имя Тип Описание
error

CloudErrorBody

Ответ об ошибке службы экземпляра контейнера.

CloudErrorBody

Ответ об ошибке службы экземпляра контейнера.

Имя Тип Описание
code

string

Идентификатор ошибки. Коды являются инвариантными и предназначены для программного использования.

details

CloudErrorBody[]

Список дополнительных сведений об ошибке.

message

string

Сообщение, описывающее ошибку, предназначенное для отображения в пользовательском интерфейсе.

target

string

Целевой объект конкретной ошибки. Например, имя свойства в ошибке.

ConfidentialComputeProperties

Свойства для конфиденциальной группы контейнеров

Имя Тип Описание
ccePolicy

string

Политика принудительного применения конфиденциальных вычислений в кодировке Base64

Container

Экземпляр контейнера.

Имя Тип Описание
name

string

Имя экземпляра контейнера, предоставленное пользователем.

properties.command

string[]

Команды, выполняемые в экземпляре контейнера в форме exec.

properties.environmentVariables

EnvironmentVariable[]

Переменные среды, заданные в экземпляре контейнера.

properties.image

string

Имя образа, используемого для создания экземпляра контейнера.

properties.instanceView

InstanceView

Представление экземпляра экземпляра экземпляра контейнера. Допустимо только в ответе.

properties.livenessProbe

ContainerProbe

Проба активности.

properties.ports

ContainerPort[]

Предоставленные порты в экземпляре контейнера.

properties.readinessProbe

ContainerProbe

Проба готовности.

properties.resources

ResourceRequirements

Требования к ресурсам экземпляра контейнера.

properties.securityContext

SecurityContextDefinition

Свойства безопасности контейнера.

properties.volumeMounts

VolumeMount[]

Том подключается к экземпляру контейнера.

ContainerExec

Команда выполнения контейнера для проверки активности или готовности

Имя Тип Описание
command

string[]

Команды, выполняемые в контейнере.

ContainerGroup

Группа контейнеров.

Имя Тип Описание
id

string

Идентификатор ресурса.

identity

ContainerGroupIdentity

Удостоверение группы контейнеров, если настроено.

location

string

Расположение ресурса.

name

string

Имя ресурса.

properties.confidentialComputeProperties

ConfidentialComputeProperties

Свойства для конфиденциальной группы контейнеров

properties.containers

Container[]

Контейнеры в группе контейнеров.

properties.diagnostics

ContainerGroupDiagnostics

Диагностические сведения для группы контейнеров.

properties.dnsConfig

DnsConfiguration

Сведения о конфигурации DNS для группы контейнеров.

properties.encryptionProperties

EncryptionProperties

Свойства шифрования для группы контейнеров.

properties.extensions

DeploymentExtensionSpec[]

расширения, используемые виртуальным kubelet

properties.imageRegistryCredentials

ImageRegistryCredential[]

Учетные данные реестра образов, из которых создается группа контейнеров.

properties.initContainers

InitContainerDefinition[]

Контейнеры инициализации для группы контейнеров.

properties.instanceView

ContainerGroupProperties.properties.InstanceView

Представление экземпляра группы контейнеров. Допустимо только в ответе.

properties.ipAddress

IpAddress

Тип IP-адреса группы контейнеров.

properties.osType

OperatingSystemTypes

Тип операционной системы, необходимый контейнерам в группе контейнеров.

properties.priority

ContainerGroupPriority

Приоритет группы контейнеров.

properties.provisioningState

string

Состояние подготовки группы контейнеров. Это отображается только в ответе.

properties.restartPolicy

ContainerGroupRestartPolicy

Перезапустите политику для всех контейнеров в группе контейнеров.

  • Always Всегда перезапуск
  • OnFailure перезапуск при сбое
  • Never никогда не перезапускать
properties.sku

ContainerGroupSku

Номер SKU для группы контейнеров.

properties.subnetIds

ContainerGroupSubnetId[]

Идентификаторы ресурсов подсети для группы контейнеров.

properties.volumes

Volume[]

Список томов, которые могут быть подключены контейнерами в этой группе контейнеров.

tags

object

Теги ресурсов.

type

string

Тип ресурса.

zones

string[]

Зоны для группы контейнеров.

ContainerGroupDiagnostics

Сведения о диагностике группы контейнеров.

Имя Тип Описание
logAnalytics

LogAnalytics

Сведения о log analytics группы контейнеров.

ContainerGroupIdentity

Удостоверение для группы контейнеров.

Имя Тип Описание
principalId

string

Идентификатор субъекта удостоверения группы контейнеров. Это свойство будет предоставлено только для назначаемого системой удостоверения.

tenantId

string

Идентификатор клиента, связанный с группой контейнеров. Это свойство будет предоставлено только для назначаемого системой удостоверения.

type

ResourceIdentityType

Тип удостоверения, используемого для группы контейнеров. Тип SystemAssigned, UserAssigned включает как неявное созданное удостоверение, так и набор назначенных пользователем удостоверений. Тип None удаляет все удостоверения из группы контейнеров.

userAssignedIdentities

<string,  UserAssignedIdentities>

Список удостоверений пользователей, связанных с группой контейнеров.

ContainerGroupIpAddressType

Указывает, предоставляется ли IP-адрес общедоступному Интернету или частной виртуальной сети.

Значение Описание
Private
Public

ContainerGroupNetworkProtocol

Протокол, связанный с портом.

Значение Описание
TCP
UDP

ContainerGroupPriority

Приоритет группы контейнеров.

Значение Описание
Regular
Spot

ContainerGroupProperties.properties.InstanceView

Представление экземпляра группы контейнеров. Допустимо только в ответе.

Имя Тип Описание
events

Event[]

События этой группы контейнеров.

state

string

Состояние группы контейнеров. Допустимо только в ответе.

ContainerGroupRestartPolicy

Перезапустите политику для всех контейнеров в группе контейнеров.

  • Always Всегда перезапуск
  • OnFailure перезапуск при сбое
  • Never никогда не перезапускать
Значение Описание
Always
Never
OnFailure

ContainerGroupSku

Номер SKU группы контейнеров.

Значение Описание
Confidential
Dedicated
Standard

ContainerGroupSubnetId

Сведения о подсети группы контейнеров.

Имя Тип Описание
id

string

Идентификатор ресурса виртуальной сети и подсети.

name

string

Понятное имя подсети.

ContainerHttpGet

Параметры Http Get контейнера для проверки активности или готовности

Имя Тип Описание
httpHeaders

HttpHeader[]

Заголовки HTTP.

path

string

Путь к пробе.

port

integer (int32)

Номер порта для проверки.

scheme

Scheme

Схема.

ContainerNetworkProtocol

Протокол, связанный с портом.

Значение Описание
TCP
UDP

ContainerPort

Порт, предоставляемый в экземпляре контейнера.

Имя Тип Описание
port

integer (int32)

Номер порта, предоставляемый в группе контейнеров.

protocol

ContainerNetworkProtocol

Протокол, связанный с портом.

ContainerProbe

Проба контейнера для активности или готовности

Имя Тип Описание
exec

ContainerExec

Команда выполнения для проверки

failureThreshold

integer (int32)

Порог сбоя.

httpGet

ContainerHttpGet

Параметры Http Get для проверки

initialDelaySeconds

integer (int32)

Начальная задержка секунд.

periodSeconds

integer (int32)

Период секунд.

successThreshold

integer (int32)

Порог успешности.

timeoutSeconds

integer (int32)

Время ожидания секунд.

ContainerState

Состояние экземпляра контейнера.

Имя Тип Описание
detailStatus

string

Состояние экземпляра контейнера, доступное для чтения.

exitCode

integer (int32)

Коды выхода экземпляра контейнера соответствуют кодам из команды docker run.

finishTime

string (date-time)

Дата и время завершения состояния экземпляра контейнера.

startTime

string (date-time)

Дата начала состояния экземпляра контейнера.

state

string

Состояние экземпляра контейнера.

DeploymentExtensionSpec

К развертыванию добавляются боковики расширений.

Имя Тип Описание
name

string

Имя расширения.

properties.extensionType

string

Тип добавляемого расширения.

properties.protectedSettings

object

Защищенные параметры расширения.

properties.settings

object

Параметры расширения.

properties.version

string

Версия используемого расширения.

DnsConfiguration

Конфигурация DNS для группы контейнеров.

Имя Тип Описание
nameServers

string[]

DNS-серверы для группы контейнеров.

options

string

Параметры DNS для группы контейнеров.

searchDomains

string

Домены поиска DNS для поиска имени узла в группе контейнеров.

dnsNameLabelReusePolicy

Значение, представляющее перечисление безопасности. Значение "Незащищено" является значением по умолчанию, если не выбрано и означает, что метка доменного имени объекта не защищена от поглощения поддомена. Значение TenantReuse — это значение по умолчанию, если выбрано и означает, что метка доменного имени объекта может использоваться повторно в одном клиенте. Значение SubscriptionReuse означает, что метка доменного имени объекта может использоваться повторно в той же подписке. Значение ResourceGroupReuse означает, что метка доменного имени объекта может использоваться повторно в одной группе ресурсов. Значение NoReuse означает, что метка доменного имени объекта не может использоваться повторно в одной группе ресурсов, подписке или клиенте.

Значение Описание
Noreuse
ResourceGroupReuse
SubscriptionReuse
TenantReuse
Unsecure

EmptyDirVolume

Пустой том каталога.

EncryptionProperties

Свойства шифрования группы контейнеров.

Имя Тип Описание
identity

string

Управляемое удостоверение keyvault.

keyName

string

Имя ключа шифрования.

keyVersion

string

Версия ключа шифрования.

vaultBaseUrl

string

Базовый URL-адрес keyvault.

EnvironmentVariable

Переменная среды, заданная в экземпляре контейнера.

Имя Тип Описание
name

string

Имя переменной среды.

secureValue

string

Значение переменной безопасной среды.

value

string

Значение переменной среды.

Event

Событие группы контейнеров или экземпляра контейнера.

Имя Тип Описание
count

integer (int32)

Количество событий.

firstTimestamp

string (date-time)

Дата и время самого раннего регистрированного события.

lastTimestamp

string (date-time)

Дата последнего регистрированного события.

message

string

Сообщение о событии.

name

string

Имя события.

type

string

Тип события.

GitRepoVolume

Представляет том, заполненный содержимым репозитория Git

Имя Тип Описание
directory

string

Имя целевого каталога. Не должно содержать или начинаться с '.'. Если задано значение ".", каталог томов будет репозиторием Git. В противном случае, если задано, том будет содержать репозиторий Git в подкаталоге с заданным именем.

repository

string

URL-адрес репозитория

revision

string

Зафиксировать хэш для указанной редакции.

GpuResource

Ресурс GPU.

Имя Тип Описание
count

integer (int32)

Количество ресурсов GPU.

sku

GpuSku

Номер SKU ресурса GPU.

GpuSku

Номер SKU ресурса GPU.

Значение Описание
K80
P100
V100

HttpHeader

Заголовок HTTP.

Имя Тип Описание
name

string

Имя заголовка.

value

string

Значение заголовка.

ImageRegistryCredential

Учетные данные реестра образов.

Имя Тип Описание
identity

string

Удостоверение частного реестра.

identityUrl

string

URL-адрес удостоверения для частного реестра.

password

string

Пароль для частного реестра.

server

string

Сервер реестра образов Docker без протокола, например http и https.

username

string

Имя пользователя для частного реестра.

InitContainerDefinition

Определение контейнера init.

Имя Тип Описание
name

string

Имя контейнера инициализации.

properties.command

string[]

Команда, выполняемая в контейнере init в форме exec.

properties.environmentVariables

EnvironmentVariable[]

Переменные среды, заданные в контейнере init.

properties.image

string

Изображение контейнера инициализации.

properties.instanceView

InitContainerPropertiesDefinition.InstanceView

Представление экземпляра контейнера init. Допустимо только в ответе.

properties.securityContext

SecurityContextDefinition

Свойства безопасности контейнера.

properties.volumeMounts

VolumeMount[]

Том подключается к контейнеру init.

InitContainerPropertiesDefinition.InstanceView

Представление экземпляра контейнера init. Допустимо только в ответе.

Имя Тип Описание
currentState

ContainerState

Текущее состояние контейнера инициализации.

events

Event[]

События контейнера инициализации.

previousState

ContainerState

Предыдущее состояние контейнера инициализации.

restartCount

integer (int32)

Количество раз перезапуска контейнера инициализации.

InstanceView

Представление экземпляра экземпляра экземпляра контейнера. Допустимо только в ответе.

Имя Тип Описание
currentState

ContainerState

Текущее состояние экземпляра контейнера.

events

Event[]

События экземпляра контейнера.

previousState

ContainerState

Предыдущее состояние экземпляра контейнера.

restartCount

integer (int32)

Количество перезапуска экземпляра контейнера.

IpAddress

IP-адрес группы контейнеров.

Имя Тип Default value Описание
autoGeneratedDomainNameLabelScope

dnsNameLabelReusePolicy

Unsecure

Значение, представляющее перечисление безопасности. Значение "Незащищено" является значением по умолчанию, если не выбрано и означает, что метка доменного имени объекта не защищена от поглощения поддомена. Значение TenantReuse — это значение по умолчанию, если выбрано и означает, что метка доменного имени объекта может использоваться повторно в одном клиенте. Значение SubscriptionReuse означает, что метка доменного имени объекта может использоваться повторно в той же подписке. Значение ResourceGroupReuse означает, что метка доменного имени объекта может использоваться повторно в одной группе ресурсов. Значение NoReuse означает, что метка доменного имени объекта не может использоваться повторно в одной группе ресурсов, подписке или клиенте.

dnsNameLabel

string

Метка DNS-имени для IP-адреса.

fqdn

string

Полное доменное имя для IP-адреса.

ip

string

IP-адрес, предоставляемый общедоступному Интернету.

ports

Port[]

Список портов, предоставляемых в группе контейнеров.

type

ContainerGroupIpAddressType

Указывает, предоставляется ли IP-адрес общедоступному Интернету или частной виртуальной сети.

LogAnalytics

Сведения о log analytics группы контейнеров.

Имя Тип Описание
logType

LogAnalyticsLogType

Используемый тип журнала.

metadata

object

Метаданные для log analytics.

workspaceId

string

Идентификатор рабочей области для log analytics

workspaceKey

string

Ключ рабочей области для log analytics

workspaceResourceId

string

Идентификатор ресурса рабочей области для log analytics

LogAnalyticsLogType

Используемый тип журнала.

Значение Описание
ContainerInsights
ContainerInstanceLogs

OperatingSystemTypes

Тип операционной системы, необходимый контейнерам в группе контейнеров.

Значение Описание
Linux
Windows

Port

Порт, предоставляемый в группе контейнеров.

Имя Тип Описание
port

integer (int32)

Номер порта.

protocol

ContainerGroupNetworkProtocol

Протокол, связанный с портом.

ResourceIdentityType

Тип удостоверения, используемого для группы контейнеров. Тип SystemAssigned, UserAssigned включает как неявное созданное удостоверение, так и набор назначенных пользователем удостоверений. Тип None удаляет все удостоверения из группы контейнеров.

Значение Описание
None
SystemAssigned
SystemAssigned, UserAssigned
UserAssigned

ResourceLimits

Ограничения ресурсов.

Имя Тип Описание
cpu

number (double)

Ограничение ЦП этого экземпляра контейнера.

gpu

GpuResource

Ограничение GPU этого экземпляра контейнера.

memoryInGB

number (double)

Ограничение памяти в ГБ этого экземпляра контейнера.

ResourceRequests

Запросы ресурсов.

Имя Тип Описание
cpu

number (double)

Запрос ЦП этого экземпляра контейнера.

gpu

GpuResource

Запрос GPU этого экземпляра контейнера.

memoryInGB

number (double)

Запрос памяти в ГБ этого экземпляра контейнера.

ResourceRequirements

Требования к ресурсам.

Имя Тип Описание
limits

ResourceLimits

Ограничения ресурсов этого экземпляра контейнера.

requests

ResourceRequests

Запросы ресурсов этого экземпляра контейнера.

Scheme

Схема.

Значение Описание
http
https

SecurityContextCapabilitiesDefinition

Возможности добавления или удаления из контейнера.

Имя Тип Описание
add

string[]

Возможности для добавления в контейнер.

drop

string[]

Возможности для удаления из контейнера.

SecurityContextDefinition

Контекст безопасности контейнера.

Имя Тип Описание
allowPrivilegeEscalation

boolean

Логическое значение, указывающее, может ли процесс инициализации повысить привилегии.

capabilities

SecurityContextCapabilitiesDefinition

Возможности добавления или удаления из контейнера.

privileged

boolean

Флаг, определяющий, являются ли разрешения контейнера повышенными привилегиями.

runAsGroup

integer (int32)

Задает ИДЕНТИФИКАТОР пользователя для контейнера.

runAsUser

integer (int32)

Задает идентификатор пользовательского интерфейса пользователя для контейнера.

seccompProfile

string

Строка в кодировке Base64, содержащая содержимое JSON в профиле seccomp

UserAssignedIdentities

Список удостоверений пользователей, связанных с группой контейнеров. Ссылки на ключ словаря удостоверений пользователя будут идентификаторами ресурсов ARM в форме: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}".

Имя Тип Описание
clientId

string

Идентификатор клиента назначаемого пользователем удостоверения.

principalId

string

Идентификатор субъекта назначаемого пользователем удостоверения.

Volume

Свойства тома.

Имя Тип Описание
azureFile

AzureFileVolume

Том файла Azure.

emptyDir

EmptyDirVolume

Пустой том каталога.

gitRepo

GitRepoVolume

Том репозитория Git.

name

string

Имя тома.

secret

object

Том секрета.

VolumeMount

Свойства подключения тома.

Имя Тип Описание
mountPath

string

Путь в контейнере, в котором должен быть подключен том. Не должен содержать двоеточие (:).

name

string

Имя подключения тома.

readOnly

boolean

Флаг, указывающий, доступен ли подключение тома только для чтения.