create-container-group-definition
Описание
Создает ContainerGroupDefinition, описывающую набор контейнеров для размещения вашего игрового сервера с помощью управляемых контейнеров Amazon GameLift. Группа контейнеров Amazon GameLift аналогична задаче контейнера или под. Используйте определения групп контейнеров при создании флота контейнеров с помощью CreateContainerFleet.
Определение группы контейнеров определяет, как Amazon GameLift развертывает ваши контейнеры на каждом экземпляре в флоте контейнеров. Вы можете поддерживать несколько версий определения группы контейнеров.
Существует два типа групп контейнеров:
- Группа контейнеров игрового сервера содержит контейнеры, в которых работает ваше приложение игрового сервера и вспомогательное программное обеспечение. Группа контейнеров игрового сервера может иметь следующие типы контейнеров:
- Контейнер игрового сервера. Этот контейнер выполняет ваш игровой сервер. В группе контейнеров игрового сервера вы можете определить один контейнер игрового сервера.
- Контейнер поддержки. Этот контейнер выполняет программное обеспечение параллельно с вашим игровым сервером. В группе игрового сервера вы можете определить до 8 контейнеров поддержки.
При создании определения группы контейнеров игрового сервера вы можете объединить исполняемый файл вашего игрового сервера и все зависимое программное обеспечение в один контейнер игрового сервера. Также вы можете разделить программное обеспечение на один контейнер игрового сервера и один или несколько контейнеров поддержки.
На экземпляре флота контейнеров группа контейнеров игрового сервера может быть развернута несколько раз (в зависимости от вычислительных ресурсов экземпляра). Это означает, что все контейнеры в группе контейнеров дублируются вместе.
- Группа контейнеров на экземпляр содержит контейнеры для процессов, которые не дублируются на экземпляре флота контейнеров. Это могут быть фоновые службы, логирование, тестовые процессы или процессы, которые должны сохраняться независимо от группы контейнеров игрового сервера. При создании группы контейнеров на экземпляр вы можете определить до 10 контейнеров поддержки.
Примечание
Параметры запроса
Используйте эту операцию для выполнения следующих типов запросов. Вы можете указать значения для минимально необходимых параметров и настроить необязательные значения позже.
- Создайте определение группы контейнеров игрового сервера. Укажите следующие значения необходимых параметров:
Name-
ContainerGroupType(GAME_SERVER) -
OperatingSystem(опустить для использования значения по умолчанию) -
TotalMemoryLimitMebibytes(опустить для использования значения по умолчанию) -
TotalVcpuLimit(опустить для использования значения по умолчанию) - По крайней мере один
GameServerContainerDefinitionContainerNameImageUrlPortConfiguration-
ServerSdkVersion(опустить для использования значения по умолчанию)
- Создайте определение группы контейнеров на экземпляр. Укажите следующие значения необходимых параметров:
Name-
ContainerGroupType(PER_INSTANCE) -
OperatingSystem(опустить для использования значения по умолчанию) -
TotalMemoryLimitMebibytes(опустить для использования значения по умолчанию) -
TotalVcpuLimit(опустить для использования значения по умолчанию) - По крайней мере один
SupportContainerDefinitionContainerNameImageUrl
При успешном выполнении этого запроса создается ресурс ContainerGroupDefinition и присваивается уникальное значение ARN. Вы можете обновить большинство свойств определения группы контейнеров, вызвав UpdateContainerGroupDefinition, и при необходимости сохранить обновление как новую версию.
См. также: Документация по API AWS
Синтаксис
create-container-group-definition
--name <value>
[--container-group-type <value>]
--total-memory-limit-mebibytes <value>
--total-vcpu-limit <value>
[--game-server-container-definition <value>]
[--support-container-definitions <value>]
--operating-system <value>
[--version-description <value>]
[--tags <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
[--debug]
[--endpoint-url <value>]
[--no-verify-ssl]
[--no-paginate]
[--output <value>]
[--query <value>]
[--profile <value>]
[--region <value>]
[--version <value>]
[--color <value>]
[--no-sign-request]
[--ca-bundle <value>]
[--cli-read-timeout <value>]
[--cli-connect-timeout <value>]
[--cli-binary-format <value>]
[--no-cli-pager]
[--cli-auto-prompt]
[--no-cli-auto-prompt]
Параметры
--name (строка)
--container-group-type (строка)
Тип группы контейнеров. Тип группы контейнеров определяет, как Amazon GameLift развернёт группу контейнеров на каждом экземпляре флота.
Значение по умолчанию: GAME_SERVER
Возможные значения:
GAME_SERVERPER_INSTANCE
--total-memory-limit-mebibytes (целое число)
Максимальный объём памяти (в МБ), который нужно выделить группе контейнеров. Вся память группы используется контейнерами. Если вы задаёте лимиты памяти для отдельных контейнеров, общее значение должно быть больше, чем лимит памяти любого отдельного контейнера.
Значение по умолчанию: 1024
--total-vcpu-limit (дробное число)
Максимальное количество единиц vCPU, которые нужно выделить группе контейнеров (1 vCPU равен 1024 CPU-единицам). Вся память группы используется контейнерами. Если вы задаёте лимиты vCPU для отдельных контейнеров, общее значение должно быть равно или больше суммы ограничений ЦП для всех контейнеров в группе.
Значение по умолчанию: 1
--game-server-container-definition (структура)
Определение контейнера игрового сервера в этой группе. Определяйте контейнер игрового сервера только когда тип группы контейнеров — GAME_SERVER . Контейнеры игровых серверов указывают образ контейнера с вашей сборкой игрового сервера. Вы можете передать определения контейнера в виде файла JSON.
ContainerName -> (строка)
DependsOn -> (список)
Устанавливает зависимости между этим контейнером и состоянием других контейнеров в той же группе контейнеров. Контейнер может иметь зависимости от нескольких других контейнеров.
Вы можете использовать зависимости для установления последовательности запуска/остановки в группе контейнеров. Например, вы можете указать, что ContainerB имеет START зависимость от ContainerA. Эта зависимость означает, что ContainerB не может запуститься, пока не запустится ContainerA. Эта зависимость обращается при завершении, что означает, что ContainerB должен завершиться до завершения ContainerA.
(структура)
Зависимость контейнера от другого контейнера в той же группе контейнеров. Зависимость влияет на то, как зависимый контейнер может запуститься или завершиться, в зависимости от состояния другого контейнера.
Например, ContainerA настроен с такой зависимостью: START зависимость от ContainerB. Это означает, что ContainerA не может запуститься, пока не запустится ContainerB. Это также означает, что ContainerA должен завершиться до завершения ContainerB.
ContainerName -> (строка)
Condition -> (строка)
Условие, которое должен выполнить контейнер-зависимость, прежде чем зависимый контейнер сможет запуститься. Допустимые условия включают:
- START - Контейнер-зависимость должен быть запущен.
- COMPLETE - Контейнер-зависимость завершил выполнение (выход).
- SUCCESS - Контейнер-зависимость завершил выполнение и завершился со статусом 0.
- HEALTHY - Контейнер-зависимость прошёл проверку работоспособности Docker.
MountPoints -> (список)
Точка монтирования, которая связывает путь внутри контейнера с файлом или каталогом на хост-системе, позволяя ей получить доступ к файлу или каталогу.
(структура)
Точка монтирования, которая связывает контейнер с файлом или каталогом на хост-системе.
InstancePath -> (строка)
ContainerPath -> (строка)
AccessLevel -> (строка)
EnvironmentOverride -> (список)
Набор переменных среды, которые необходимо передать контейнеру при запуске. Смотрите параметр ContainerDefinition::environment в Справочнике API Amazon Elastic Container Service.
(структура)
Переменная среды, которую нужно установить внутри контейнера в виде пары «ключ-значение».
Name -> (строка)
Value -> (строка)
ImageUri -> (строка)
Расположение образа контейнера для развертывания в флот контейнеров. Укажите образ в общедоступном или частном репозитории Amazon Elastic Container Registry. Репозиторий должен находиться в той же учетной записи Amazon Web Services и регионе Amazon Web Services, где вы создаёте определение группы контейнеров. Ограничения на размер образа см. в разделах Amazon GameLift и квоты.
- Только идентификатор образа:
[AWS account].dkr.ecr.[AWS region].amazonaws.com/[repository ID] - Идентификатор образа и дайджест:
[AWS account].dkr.ecr.[AWS region].amazonaws.com/[repository ID]@[digest] - Идентификатор образа и тег:
[AWS account].dkr.ecr.[AWS region].amazonaws.com/[repository ID]:[tag]
PortConfiguration -> (структура)
Набор портов, которые Amazon GameLift может назначить процессам в контейнере. Процессы должны иметь порт контейнера для приёма входящих соединений. Например, процессу игрового сервера нужен порт контейнера, чтобы клиенты игры могли к нему подключиться. Порты контейнеров не доступны напрямую для входящего трафика. Вместо этого Amazon GameLift отображает порты контейнеров на внешние доступные порты подключения (см. свойство флота контейнеров ConnectionPortRange).
ContainerPortRanges -> (список)
Набор одного или нескольких диапазонов номеров портов контейнера. Диапазоны не могут перекрываться.
(структура)
Набор одного или нескольких номеров портов, которые можно открыть в контейнере.
FromPort -> (целое число)
ToPort -> (целое число)
FromPort.Protocol -> (строка)
ServerSdkVersion -> (строка)
Синтаксис JSON:
{
"ContainerName": "string",
"DependsOn": [
{
"ContainerName": "string",
"Condition": "START"|"COMPLETE"|"SUCCESS"|"HEALTHY"
}
...
],
"MountPoints": [
{
"InstancePath": "string",
"ContainerPath": "string",
"AccessLevel": "READ_ONLY"|"READ_AND_WRITE"
}
...
],
"EnvironmentOverride": [
{
"Name": "string",
"Value": "string"
}
...
],
"ImageUri": "string",
"PortConfiguration": {
"ContainerPortRanges": [
{
"FromPort": integer,
"ToPort": integer,
"Protocol": "TCP"|"UDP"
}
...
]
},
"ServerSdkVersion": "string"
}
--support-container-definitions (список)
Один или несколько определений контейнеров поддержки для этой группы. Вы можете определить контейнер поддержки в любом типе группы контейнеров. Вы можете передать определения контейнеров в файле JSON.
(структура)
Описание контейнера поддержки в группе контейнеров. Вы можете определить контейнер поддержки в группе контейнеров сервера игры или в группе контейнеров на экземпляр. Контейнеры поддержки не запускают процессы сервера игры.
Это определение включает конфигурацию контейнера, ресурсы и инструкции по запуску. Используйте этот тип данных при создании или обновлении определения группы контейнеров. Свойства развернутого контейнера поддержки см. в SupportContainerDefinition.
ContainerName -> (строка)
DependsOn -> (список)
Устанавливает зависимости между этим контейнером и состоянием других контейнеров в той же группе контейнеров. Контейнер может иметь зависимости от нескольких разных контейнеров.
.
Вы можете использовать зависимости для установления последовательности запуска/остановки в группе контейнеров. Например, вы можете указать, что ContainerB имеет зависимость START от ContainerA. Эта зависимость означает, что ContainerB не может быть запущен, пока не будет запущен ContainerA. Эта зависимость меняет направление при остановке, что означает, что ContainerB должен быть остановлен до того, как сможет быть остановлен ContainerA.
(структура)
Зависимость контейнера от другого контейнера в той же группе контейнеров. Зависимость влияет на то, как зависимый контейнер может запускаться или останавливаться в зависимости от состояния другого контейнера.
Например, ContainerA настроен со следующей зависимостью: зависимость START от ContainerB. Это означает, что ContainerA не может быть запущен, пока не будет запущен ContainerB. Это также означает, что ContainerA должен быть остановлен до ContainerB.
ContainerName -> (строка)
Condition -> (строка)
Условие, которому должен удовлетворить контейнер-зависимость, прежде чем зависимый контейнер сможет быть запущен. Допустимые условия включают:
- START - контейнер-зависимость должен быть запущен.
- COMPLETE - контейнер-зависимость завершен (закончил работу). Используйте это условие для несущественных контейнеров, таких как контейнеры, которые запускают скрипт и затем завершают работу. Контейнер-зависимость не может быть существенным контейнером.
- SUCCESS - контейнер-зависимость завершен и завершен с кодом состояния 0. Контейнер-зависимость не может быть существенным контейнером.
- HEALTHY - контейнер-зависимость прошёл проверку состояния Docker. Используйте это условие с контейнерами-зависимостями, у которых настроены проверки состояния. Это условие проверяется только при запуске группы контейнеров.
MountPoints -> (список)
Точка монтирования, которая связывает путь внутри контейнера с файлом или каталогом в системе хоста и позволяет ему получить доступ к файлу или каталогу.
(структура)
Точка монтирования, которая связывает контейнер с файлом или каталогом на хост-системе.
InstancePath -> (строка)
ContainerPath -> (строка)
AccessLevel -> (строка)
EnvironmentOverride -> (список)
Набор переменных среды, передаваемых контейнеру при запуске. См. параметр ContainerDefinition::environment в Amazon Elastic Container Service API Reference.
(структура)
Переменная среды для установки внутри контейнера в виде пары ключ-значение.
Name -> (строка)
Value -> (строка)
Essential -> (булево)
HealthCheck -> (структура)
Конфигурация для проверки состояния, которая не приводит к завершению. Контейнер автоматически перезапускается, если перестаёт функционировать. С помощью проверки состояния вы можете определить дополнительные причины для обозначения контейнера как неработоспособного и перезапустить его. Если существенный контейнер не пройдёт проверку состояния, вся группа контейнеров перезапустится.
Command -> (список)
Массив строк, определяющий команду, которую контейнер выполняет для определения своего работоспособного состояния.
(строка)
Interval -> (целое число)
Retries -> (целое число)
StartPeriod -> (целое число)
Timeout -> (целое число)
ImageUri -> (строка)
Расположение изображения контейнера для развертывания в флоте контейнеров. Предоставьте изображение в общедоступном или частном репозитории Amazon Elastic Container Registry. Репозиторий должен находиться в той же учётной записи AWS и той же зоне AWS, где вы создаёте определение группы контейнеров. Ограничения на размер изображения см. в Amazon GameLift endpoints and quotas. Вы можете использовать любой из следующих форматов URI изображения:
- Только идентификатор изображения:
[AWS account].dkr.ecr.[AWS region].amazonaws.com/[repository ID] - Идентификатор изображения и дайджест:
[AWS account].dkr.ecr.[AWS region].amazonaws.com/[repository ID]@[digest] - Идентификатор изображения и тег:
[AWS account].dkr.ecr.[AWS region].amazonaws.com/[repository ID]:[tag]
MemoryHardLimitMebibytes -> (целое число)
Указанное количество памяти (в МБ) для выделения этому контейнеру. Если вы не указываете ограничение памяти для контейнера, контейнер использует общее выделение памяти для группы контейнеров.
PortConfiguration -> (структура)
Набор портов, которые Amazon GameLift может назначить процессам в контейнере. Любые процессы, принимающие входящие соединения, должны быть назначены портом из этого набора. Диапазон портов контейнера должен быть достаточно широким, чтобы назначить один каждому процессу в контейнере, которому это необходимо.
Порты контейнера не доступны напрямую для входящего трафика. Amazon GameLift отображает эти порты контейнера на внешние доступные порты соединений, которые назначаются по мере необходимости из ConnectionPortRange флота контейнеров.
ContainerPortRanges -> (список)
Набор одного или нескольких диапазонов номеров портов контейнера. Диапазоны не могут перекрываться.
(структура)
Набор одного или нескольких номеров портов, которые можно открыть в контейнере.
FromPort -> (целое число)
ToPort -> (целое число)
FromPort.Protocol -> (строка)
Vcpu -> (двойное)
Количество единиц vCPU для выделения этому контейнеру. Контейнер может использовать больше ресурсов при необходимости, если они доступны. Если вы не выделяете процессорные единицы для этого контейнера, он использует общее ограничение vCPU группы контейнеров.
Синтаксис JSON:
[
{
"ContainerName": "string",
"DependsOn": [
{
"ContainerName": "string",
"Condition": "START"|"COMPLETE"|"SUCCESS"|"HEALTHY"
}
...
],
"MountPoints": [
{
"InstancePath": "string",
"ContainerPath": "string",
"AccessLevel": "READ_ONLY"|"READ_AND_WRITE"
}
...
],
"EnvironmentOverride": [
{
"Name": "string",
"Value": "string"
}
...
],
"Essential": true|false,
"HealthCheck": {
"Command": ["string", ...],
"Interval": integer,
"Retries": integer,
"StartPeriod": integer,
"Timeout": integer
},
"ImageUri": "string",
"MemoryHardLimitMebibytes": integer,
"PortConfiguration": {
"ContainerPortRanges": [
{
"FromPort": integer,
"ToPort": integer,
"Protocol": "TCP"|"UDP"
}
...
]
},
"Vcpu": double
}
...
]
--operating-system (строка)
Платформа, которую все контейнеры в группе используют. Контейнеры в группе должны работать на одной операционной системе.
Значение по умолчанию: AMAZON_LINUX_2023
Примечание
Amazon Linux 2 (AL2) достигнет окончания поддержки 30 июня 2025 года. Подробнее см. в часто задаваемых вопросах о Amazon Linux 2. Для серверов игр, размещённых на AL2 и использующих версию серверного SDK 4.x для Amazon GameLift, сначала обновите сборку сервера игры до серверного SDK 5.x, а затем разверните её на экземплярах AL2023. См. Переход на версию серверного SDK 5.Возможные значения:
AMAZON_LINUX_2023
--version-description (строка)
--tags (список)
Список меток для назначения ресурсу определения группы контейнеров. Метки — это задаваемые разработчиком пары «ключ-значение». Использование меток ресурсов AWS полезно для управления ресурсами, управления доступом и распределения затрат. Дополнительная информация приведена в разделе «Использование меток для ресурсов AWS» в Общей справке Amazon Web Services.
(структура)
Метка, которую вы можете назначить ресурсу Amazon GameLift.
Дополнительная информация
Использование меток для ресурсов AWS в Общей справке Amazon Web Services
Стратегии использования меток Amazon Web Services
Связанные действия
Все API по задачам
Key -> (строка)
Value -> (строка)
Сокращённый синтаксис:
Key=string,Value=string ...
Синтаксис JSON:
[
{
"Key": "string",
"Value": "string"
}
...
]
--cli-input-json | --cli-input-yaml (строка) Считывает аргументы из предоставленной строки JSON. Строка JSON соответствует формату, предоставленному в --generate-cli-skeleton. Если на командной строке предоставлены другие аргументы, эти значения переопределят значения, предоставленные в JSON. Невозможно передать произвольные двоичные данные с помощью предоставленного значения JSON, так как строка будет интерпретироваться буквально. Это не может быть указано вместе с --cli-input-yaml.
--generate-cli-skeleton (строка) Выводит JSON-скелет в стандартный вывод без отправки запроса к API. Если предоставлено значение без значения или значение input, выводит JSON-пример входных данных, который можно использовать в качестве аргумента для --cli-input-json. Аналогично, если предоставлено yaml-input, будет выведен пример входных данных YAML, который можно использовать с --cli-input-yaml. Если предоставлено значение output, он проверяет входные данные команды и возвращает пример выходных данных JSON для этой команды. Сгенерированный JSON-скелет не является стабильным между версиями AWS CLI, и нет гарантий обратной совместимости в сгенерированном JSON-скелете.
Глобальные параметры
--debug (логическое)
Включить отладочную запись в журнал.
--endpoint-url (строка)
Переопределить URL по умолчанию команды заданным URL.
--no-verify-ssl (логическое)
По умолчанию AWS CLI использует SSL при взаимодействии с AWS-сервисами. Для каждого SSL-соединения AWS CLI будет проверять SSL-сертификаты. Этот параметр переопределяет поведение проверки SSL-сертификатов по умолчанию.
--no-paginate (логическое)
Отключить автоматическую постраничную навигацию. Если автоматическая постраничная навигация отключена, AWS CLI сделает только один вызов для первой страницы результатов.
--output (строка)
Стиль форматирования выходных данных команды.
- json
- text
- таблица
- yaml
- yaml-поток
--query (строка)
Запрос JMESPath для фильтрации данных ответа.
--profile (строка)
Использовать определенный профиль из вашего файла учетных данных.
--region (строка)
Регион для использования. Переопределяет настройки конфигурации/среды.
--version (строка)
Отобразить версию этого инструмента.
--color (строка)
Включить/выключить цветной вывод.
- включено
- выключено
- авто
--no-sign-request (логическое)
Не подписывать запросы. Учетные данные не будут загружены, если этот аргумент предоставлен.
--ca-bundle (строка)
Файл сертификатов CA для использования при проверке SSL-сертификатов. Переопределяет настройки конфигурации/среды.
--cli-read-timeout (целое число)
Максимальное время чтения сокета в секундах. Если значение установлено в 0, чтение сокета будет выполняться блокирующим образом без таймаута. Значение по умолчанию составляет 60 секунд.
--cli-connect-timeout (целое число)
Максимальное время подключения сокета в секундах. Если значение установлено в 0, подключение сокета будет выполняться блокирующим образом без таймаута. Значение по умолчанию составляет 60 секунд.
--cli-binary-format (строка)
Стиль форматирования, используемый для двоичных блоков. Формат по умолчанию — base64. Формат base64 ожидает, что двоичные блоки будут предоставлены как строка, закодированная в base64. Формат raw-in-base64-out сохраняет совместимость с поведением AWS CLI V1, и двоичные значения должны передаваться буквально. При предоставлении содержимого из файла, соответствующего двоичному блоку fileb:// всегда будет обрабатываться как двоичный и будет использовать содержимое файла напрямую независимо от cli-binary-format. При использовании file:// содержимое файла должно быть должным образом отформатировано для конфигурированного cli-binary-format.
- base64
- raw-in-base64-out
--no-cli-pager (логическое)
Отключить пагинатор cli для вывода.
--cli-auto-prompt (логическое)
Автоматически запрашивать параметры входных данных CLI.
--no-cli-auto-prompt (логическое)
Отключить автоматическое запрошение параметров входных данных CLI.
Вывод
ContainerGroupDefinition -> (структура)
Свойства нового ресурса определения группы контейнеров. Вы можете использовать этот ресурс для создания флота контейнеров.
ContainerGroupDefinitionArn -> (строка)
arn:aws:gamelift:[region]::containergroupdefinition/[container group definition name]:[version] .CreationTime -> (отметка времени)
"1469498468.057" ).OperatingSystem -> (строка)
Платформа, на которой выполняются все контейнеры в определении группы контейнеров.
Примечание
Поддержка Amazon Linux 2 (AL2) закончится 30 июня 2025 г. Дополнительную информацию см. в разделе Amazon Linux 2 FAQs . Для игровых серверов, размещенных на AL2 и использующих версию серверного SDK 4.x для Amazon GameLift, сначала обновите сборку игрового сервера на версию серверного SDK 5.x, а затем разверните ее на экземплярах AL2023. См. Переход на версию серверного SDK 5.Name -> (строка)
ContainerGroupType -> (строка)
TotalMemoryLimitMebibytes -> (целое число)
Объем памяти (в МБ) на экземпляре флота, который необходимо выделить для группы контейнеров. Все контейнеры в группе используют эти ресурсы.
Можно установить ограничение для каждого определения контейнера в группе. Если у отдельных контейнеров есть ограничения, это общее значение должно быть больше любого индивидуального ограничения памяти контейнера.
TotalVcpuLimit -> (двойное число)
GameServerContainerDefinition -> (структура)
Определение контейнера игрового сервера в этой группе. Это свойство используется только тогда, когда тип группы контейнеров GAME_SERVER . Это определение контейнера указывает образ контейнера со сборкой игрового сервера.
ContainerName -> (строка)
DependsOn -> (список)
Указывает, что контейнер зависит от статуса других контейнеров в той же группе контейнеров во время последовательностей запуска и завершения работы. Контейнер может иметь зависимости от нескольких контейнеров.
(структура)
Зависимость контейнера от другого контейнера в той же группе контейнеров. Зависимость влияет на то, как зависимый контейнер может начать или остановить работу в зависимости от статуса другого контейнера.
Например, ContainerA настроен с следующей зависимостью: зависимость START от ContainerB . Это означает, что ContainerA не может быть запущен до тех пор, пока ContainerB не будет запущен. Это также означает, что ContainerA должен быть остановлен перед ContainerB .
ContainerName -> (строка)
Condition -> (строка)
Условие, которое должен выполнить зависимый контейнер, прежде чем зависимый контейнер сможет начать работу. Допустимые условия включают:
- START - Зависимый контейнер должен был запущен.
- COMPLETE - Зависимый контейнер завершил работу (выход). Используйте это условие для некритически важных контейнеров, таких как те, которые выполняют сценарий и затем выходят. Зависимый контейнер не может быть критически важным контейнером.
- SUCCESS - Зависимый контейнер завершил работу и завершился со статусом 0. Зависимый контейнер не может быть критически важным контейнером.
- HEALTHY - Зависимый контейнер успешно прошел проверку работоспособности Docker. Используйте это условие для зависимых контейнеров, у которых настроены проверки работоспособности. Это условие проверяется только при запуске группы контейнеров.
MountPoints -> (список)
Точка монтирования, которая связывает путь внутри контейнера с файлом или каталогом на хост-системе и позволяет получить доступ к файлу или каталогу.
(структура)
Точка монтирования, которая связывает контейнер с файлом или каталогом на хост-системе.
InstancePath -> (строка)
ContainerPath -> (строка)
AccessLevel -> (строка)
EnvironmentOverride -> (список)
Набор переменных среды, передаваемых контейнеру при запуске. См. параметр ContainerDefinition::environment в справочнике Amazon Elastic Container Service API .
(структура)
Переменная среды для установки внутри контейнера в виде пары ключ-значение.
Name -> (строка)
Value -> (строка)
ImageUri -> (строка)
ResolvedImageDigest .PortConfiguration -> (структура)
Набор портов, доступных для привязки к процессам в контейнере. Например, процесс игрового сервера требует порта контейнера, чтобы разрешить клиентам игры подключаться к нему. К портам контейнера напрямую не осуществляется доступ из внешнего трафика. Amazon GameLift сопоставляет эти порты контейнеров с внешними портами подключения, которые назначаются по мере необходимости из ConnectionPortRange флота контейнеров.
ContainerPortRanges -> (список)
Набор одного или нескольких диапазонов портов контейнера. Диапазоны не должны перекрываться.
(структура)
Набор одного или нескольких номеров портов, которые могут быть открыты в контейнере.
FromPort -> (целое число)
ToPort -> (целое число)
FromPort .Protocol -> (строка)
ResolvedImageDigest -> (строка)
ServerSdkVersion -> (строка)
SupportContainerDefinitions -> (список)
Набор определений для контейнеров поддержки в этой группе. Определение группы контейнеров может не содержать ни одного определения контейнера поддержки. Контейнер поддержки может использоваться в любом типе группы контейнеров.
(структура)
Описание контейнера поддержки в группе контейнеров. Контейнер поддержки может входить в группу контейнеров сервера игры или в группу контейнеров на экземпляр. Контейнеры поддержки не запускают процессы сервера игры.
Вы можете обновить определение контейнера поддержки и развернуть обновления в существующем флоте. При создании или обновлении определения группы контейнеров сервера игры используйте свойство GameServerContainerDefinitionInput.
Часть от: ContainerGroupDefinition
Возвращается: DescribeContainerGroupDefinition , ListContainerGroupDefinitions , UpdateContainerGroupDefinition
ContainerName -> (строка)
DependsOn -> (список)
Указывает, что контейнер зависит от состояния других контейнеров в той же группе контейнеров во время последовательностей запуска и завершения работы. Контейнер может иметь зависимости от нескольких контейнеров.
(структура)
Зависимость контейнера от другого контейнера в той же группе контейнеров. Зависимость влияет на то, как зависимый контейнер может запускаться или завершать работу в зависимости от состояния другого контейнера.
Например, ContainerA настроен со следующей зависимостью: зависимость START от ContainerB. Это означает, что ContainerA не может запуститься, пока ContainerB не запустится. Это также означает, что ContainerA должен завершить работу до ContainerB.
ContainerName -> (строка)
Condition -> (строка)
Условие, которое должен выполнить зависимый контейнер, прежде чем зависимый контейнер сможет запуститься. Допустимые условия:
- START - Зависимый контейнер должен быть запущен.
- COMPLETE - Зависимый контейнер завершил работу (выход). Используйте это условие для некритически важных контейнеров, например, таких, которые выполняют скрипт и затем выходят. Зависимый контейнер не может быть критическим контейнером.
- SUCCESS - Зависимый контейнер завершил работу и вышел со статусом ноль. Зависимый контейнер не может быть критическим контейнером.
- HEALTHY - Зависимый контейнер успешно прошёл проверку работоспособности Docker. Используйте это условие для контейнеров зависимостей, у которых настроены проверки работоспособности. Это условие проверяется только при запуске группы контейнеров.
MountPoints -> (список)
Точка монтирования, которая связывает путь внутри контейнера с файлом или каталогом на хост-системе и позволяет ему получить доступ к файлу или каталогу.
(структура)
Точка монтирования, которая связывает контейнер с файлом или каталогом на хост-системе.
InstancePath -> (строка)
ContainerPath -> (строка)
AccessLevel -> (строка)
EnvironmentOverride -> (список)
Набор переменных среды, передаваемых контейнеру при запуске. См. параметр ContainerDefinition::environment в справке по API Amazon Elastic Container Service.
(структура)
Переменная среды для установки внутри контейнера в формате пары ключ-значение.
Name -> (строка)
Value -> (строка)
Essential -> (булево)
HealthCheck -> (структура)
Настройка для проверки работоспособности, не приводящей к завершению. Контейнер поддержки автоматически перезапустится, если он перестанет функционировать или не пройдёт эту проверку работоспособности.
Command -> (список)
Массив строк, определяющий команду, которую выполняет контейнер для определения своей работоспособности.
(строка)
Interval -> (целое)
Retries -> (целое)
StartPeriod -> (целое)
Timeout -> (целое)
ImageUri -> (строка)
ResolvedImageDigest.MemoryHardLimitMebibytes -> (целое)
Объем памяти, который Amazon GameLift выделяет контейнеру. Если лимиты памяти не установлены для отдельного контейнера, контейнер разделяет общее выделение памяти группы контейнеров.
PortConfiguration -> (структура)
Набор портов, позволяющих пользователям получить доступ к контейнеру извне. Процессы, выполняемые в контейнере, могут привязаться к одному из этих портов. Порты контейнера не напрямую доступны для входящего трафика. Amazon GameLift сопоставляет эти порты контейнера с внешними доступными портами подключения, которые назначаются по мере необходимости из ConnectionPortRange флота контейнеров.
ContainerPortRanges -> (список)
Набор одного или нескольких диапазонов номеров портов контейнера. Диапазоны не должны перекрываться.
(структура)
Набор одного или нескольких номеров портов, которые можно открыть в контейнере.
FromPort -> (целое)
ToPort -> (целое)
FromPort.Protocol -> (строка)
ResolvedImageDigest -> (строка)
Vcpu -> (вещественное число)
Количество единиц vCPU, резервируемых для контейнера. Если ресурсы не резервируются, контейнер разделяет общий лимит vCPU для группы контейнеров.
VersionNumber -> (целое)
VersionDescription -> (строка)
Status -> (строка)
Текущий статус ресурса определения группы контейнеров. Значения включают:
-
COPYING– Amazon GameLift копирует все изображения контейнеров, определённые в группе. В этом состоянии ресурс нельзя использовать для создания флота контейнеров. -
READY– Amazon GameLift скопировал изображения реестра для всех контейнеров, определённых в группе. Вы можете использовать определение группы контейнеров в этом состоянии для создания флота контейнеров. -
FAILED– Amazon GameLift не смог создать допустимый ресурс определения группы контейнеров. Для получения более подробной информации о причине сбоя, см.StatusReason. Ресурс определения группы контейнеров в состоянии ошибки будет удалён в течение нескольких минут.
StatusReason -> (строка)
Дополнительная информация об определении группы контейнеров, которое находится в состоянии FAILED. Возможные причины включают:
- Внутренняя проблема помешала Amazon GameLift создать ресурс определения группы контейнеров. Удалите повреждённый ресурс и снова вызовите CreateContainerGroupDefinition.
- Сообщение об отказе в доступе означает, что у вас нет разрешений на доступ к изображению контейнера в ECR. См. примеры разрешений IAM для получения помощи в настройке необходимых разрешений IAM для Amazon GameLift.
- Значение
ImageUriдля по крайней мере одного из контейнеров в определении группы контейнеров было недействительным или не найдено в текущей учётной записи Amazon Web Services. - По крайней мере одно из изображений контейнеров, на которые ссылается определение группы контейнеров, превышает разрешённый размер. Для ограничения по размеру, см. Amazon GameLift endpoints and quotas.
- По крайней мере одно из изображений контейнеров, на которые ссылается определение группы контейнеров, использует операционную систему, отличную от той, которая определена для группы контейнеров.
© Copyright 2025, Amazon Web Services. Created using Sphinx.