Spec-Zone.ru › AWS CLI v2

[ aws . ecs ]

describe-task-definition

Описание

Описывает определение задачи. Вы можете указать family и revision, чтобы найти информацию о конкретном определении задачи, или просто указать семейство, чтобы найти последнюю ACTIVE версию в этом семействе.

Примечание

Вы можете описать только INACTIVE определения задач, пока активная задача или служба ссылаются на них.

См. также: Документацию API AWS

Синтаксис

  describe-task-definition
--task-definition <value>
[--include <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]

Параметры

--task-definition (строка)

Идентификатор family для последней ACTIVE версии, family и revision (family:revision) для конкретной версии в семействе или полный Amazon Resource Name (ARN) определения задачи для описания.

--include (список)

Определяет, отображать ли теги ресурсов для определения задачи. Если указан TAGS, теги включаются в ответ. Если этот параметр опущен, теги не включаются в ответ.

(строка)

Синтаксис:

"string" "string" ...

Where valid values are:
  TAGS

--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
  • текст
  • таблица
  • 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-auto-prompt (логическое значение)

Автоматически запрашивать параметры ввода CLI.

--no-cli-auto-prompt (логическое значение)

Отключить автоматическую запрос параметров ввода CLI.

Примеры

Примечание

Для использования следующих примеров вам необходимо установить и настроить AWS CLI. Более подробную информацию см. в руководстве по началу работы в Руководстве пользователя AWS CLI.

Если не указано иное, все примеры используют правила цитирования, аналогичные Unix. Эти примеры необходимо адаптировать к правилам цитирования вашего терминала. См. раздел «Использование кавычек со строками» в Руководстве пользователя AWS CLI.

Чтобы описать определение задачи

В следующем describe-task-definition примере извлекаются подробности о определении задачи.

aws ecs describe-task-definition \
    --task-definition hello_world:8

Вывод:

{
    "taskDefinition": {
        "taskDefinitionArn": "arn:aws:ecs:us-east-1:012345678910:task-definition/hello_world:8",
        "containerDefinitions": [
            {
                "cpu": 10,
                "environment": [],
                "essential": true,
                "image": "wordpress",
                "links": [
                    "mysql"
                ] ,
                "memory": 500,
                "mountPoints": [],
                "name": "wordpress",
                "portMappings": [
                    {
                        "containerPort": 80,
                        "hostPort": 80
                    }
                ],
                "volumesFrom": []
            },
            {
                "cpu": 10,
                "environment": [
                    {
                        "name": "MYSQL_ROOT_PASSWORD",
                        "value": "password"
                    }
                ],
                "essential": true,
                "image": "mysql",
                "memory": 500,
                "mountPoints": [],
                "name": "mysql",
                "portMappings": [],
                "volumesFrom": []
            }
        ],
    "family": "hello_world",
    "revision": 8,
    "volumes": [],
    "status": "ACTIVE",
    "placementConstraints": [],
    "compatibilities": [
        "EXTERNAL",
        "EC2"
    ],
    "registeredAt": "2024-06-21T11:15:12.669000-05:00",
    "registeredBy": "arn:aws:sts::012345678910:assumed-role/demo-role/jane-doe"
    },
    "tags": []
}

Дополнительную информацию см. в разделе «Определения задач Amazon ECS» в Руководстве разработчика Amazon ECS.

Вывод

taskDefinition -> (структура)

Полное описание определения задачи.

taskDefinitionArn -> (строка)

Полное Amazon Resource Name (ARN) определения задачи.

containerDefinitions -> (список)

Список определений контейнеров в формате JSON, описывающих различные контейнеры, из которых состоит ваша задача. Дополнительную информацию о параметрах и значениях по умолчанию для определений контейнеров см. в разделе Amazon ECS Task Definitions в руководстве Amazon Elastic Container Service Developer Guide.

(структура)

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

name -> (строка)

Имя контейнера. Если вы связываете несколько контейнеров в определении задачи, имя одного контейнера может быть указано в поле имени другого контейнера для связи контейнеров. Разрешено до 255 букв (строчные и прописные), цифр, символов подчеркивания и дефисов. Этот параметр соответствует параметру name в команде docker container create и параметру links в команде docker run.

image -> (строка)

Изображение, используемое для запуска контейнера. Эта строка передается непосредственно демону Docker. По умолчанию доступны изображения из реестра Docker Hub. Другие репозитории указываются либо как `` repository-url /image :tag ``, либо как `` repository-url /image @*digest* ``. Разрешено до 255 букв (строчные и прописные), цифр, дефисов, символов подчеркивания, двоеточий, точек, косых черт и знаков номера. Этот параметр соответствует параметру Image в команде docker container create и параметру IMAGE в команде docker run.

  • При запуске новой задачи агент Amazon ECS извлекает последнюю версию указанного изображения и тега для использования контейнером. Однако последующие обновления изображения репозитория не распространяются на уже запущенные задачи.
  • Изображения в репозиториях Amazon ECR можно указать, используя полный registry/repository:tag или registry/repository@digest . Например, 012345678910.dkr.ecr.<region-name>.amazonaws.com/<repository-name>:latest или 012345678910.dkr.ecr.<region-name>.amazonaws.com/<repository-name>@sha256:94afd1f2e64d908bc90dbca0035a5b567EXAMPLE.
  • Изображения в официальных репозиториях Docker Hub используют одно имя (например, ubuntu или mongo).
  • Изображения в других репозиториях Docker Hub квалифицируются именем организации (например, amazon/amazon-ecs-agent).
  • Изображения в других онлайн-репозиториях дополнительно квалифицируются доменным именем (например, quay.io/assemblyline/ubuntu).

repositoryCredentials -> (структура)

Учетные данные для аутентификации в частном репозитории.

credentialsParameter -> (строка)

Amazon Resource Name (ARN) секрета, содержащего учетные данные для аутентификации в частном репозитории.

Примечание

При использовании Amazon ECS API, командной строки или Amazon Web Services SDK, если секрет находится в том же регионе, что и запускаемая задача, можно использовать либо полный ARN, либо имя секрета. При использовании Amazon Web Services Management Console необходимо указать полный ARN секрета.

cpu -> (целое число)

Количество единиц cpu, резервируемых для контейнера. Этот параметр соответствует параметру CpuShares в команде docker container create и параметру --cpu-shares в команде docker run.

Это поле необязательно для задач, использующих тип запуска Fargate, и единственное требование заключается в том, чтобы общее количество выделенных единиц ЦП для всех контейнеров в задаче было меньше значения cpu на уровне задачи.

Примечание

Количество единиц ЦП, доступных для каждого типа экземпляра EC2, можно определить, умножив количество vCPU, указанное для этого типа экземпляра на странице с информацией об экземплярах Amazon EC2, на 1024.

Контейнеры Linux делят нераспределенные единицы ЦП с другими контейнерами на экземпляре контейнера в том же соотношении, что и их выделенное количество. Например, если вы запускаете задачу с одним контейнером на экземпляре с одним ядром и 512 единицами ЦП, выделенными для этого контейнера, и это единственная задача, выполняемая на экземпляре контейнера, этот контейнер может использовать всю долю в 1024 единиц ЦП в любой момент времени. Однако, если вы запустили еще одну копию той же задачи на этом экземпляре контейнера, каждой задаче гарантируется минимум 512 единиц ЦП при необходимости. Более того, каждый контейнер может плавать к более высокому использованию ЦП, если другой контейнер не использует его. Если обе задачи были активны на 100% все время, они были бы ограничены 512 единицами ЦП.

На экземплярах контейнеров Linux демон Docker на экземпляре контейнера использует значение ЦП для расчета относительных соотношений доли ЦП для запущенных контейнеров. Минимальное допустимое значение доли ЦП, разрешенное ядром Linux, равно 2, а максимальное допустимое значение доли ЦП, разрешенное ядром Linux, равно 262144. Однако параметр ЦП не является обязательным, и вы можете использовать значения ЦП ниже 2 или выше 262144 в своих определениях контейнеров. Для значений ЦП ниже 2 (включая null) или выше 262144 поведение зависит от версии агента Amazon ECS контейнера:

  • Версии агента до или равной 1.1.0: Значения ЦП null и ноль передаются Docker как 0, которое Docker преобразует в 1024 доли ЦП. Значение ЦП 1 передается Docker как 1, которое ядро Linux преобразует в две доли ЦП.
  • Версии агента от 1.2.0 и выше: Значения ЦП null, ноль и 1 передаются Docker как 2.
  • Версии агента от 1.84.0 и выше: Значения ЦП, превышающие 256 vCPU, передаются Docker как 256, что эквивалентно 262144 долям ЦП.

На экземплярах контейнеров Windows ограничение по ЦП применяется как абсолютное ограничение или квота. Контейнеры Windows имеют доступ только к указанному в определении задачи количеству ЦП.

memory -> (целое число)

Количество памяти (в MiB), предоставляемое контейнеру. Если ваш контейнер попытается превысить указанный здесь объем памяти, контейнер будет убит. Общий объем памяти, зарезервированной для всех контейнеров в задаче, должен быть меньше значения memory на уровне задачи, если оно указано. Этот параметр соответствует параметру Memory в команде docker container create и параметру --memory в команде docker run.

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

При использовании типа запуска EC2 необходимо указать либо значение памяти на уровне задачи, либо на уровне контейнера. Если вы укажете оба значения - значение памяти на уровне контейнера memory и memoryReservation - значение memory должно быть больше memoryReservation . Если вы укажете memoryReservation , это значение вычитается из доступных ресурсов памяти для экземпляра контейнера, где размещен контейнер. В противном случае используется значение memory.

Демoн Docker 20.10.0 или более поздней версии зарезервирует минимум 6 MiB памяти для контейнера. Поэтому не указывайте меньше 6 MiB памяти для ваших контейнеров.

Демoн Docker 19.03.13-ce или более ранней версии зарезервирует минимум 4 MiB памяти для контейнера. Поэтому не указывайте меньше 4 MiB памяти для ваших контейнеров.

memoryReservation -> (целое число)

Мягкое ограничение (в MiB) памяти, зарезервированной для контейнера. При высокой конкуренции за системную память Docker пытается поддерживать память контейнера на этом мягком лимите. Однако контейнер может потреблять больше памяти, когда это необходимо, вплоть до жесткого лимита, указанного с параметром memory (если применимо), или всей доступной памяти на экземпляре контейнера, в зависимости от того, что наступит раньше. Этот параметр соответствует параметру MemoryReservation в команде docker container create и параметру --memory-reservation в команде docker run.

Если значение памяти на уровне задачи не указано, необходимо указать ненулевое целое число для одного или обоих параметров memory или memoryReservation в определении контейнера. Если вы укажете оба, значение memory должно быть больше memoryReservation . Если вы укажете memoryReservation , это значение вычитается из доступных ресурсов памяти для экземпляра контейнера, где размещен контейнер. В противном случае используется значение memory.

Например, если ваш контейнер обычно использует 128 MiB памяти, но иногда кратковременно увеличивает использование до 256 MiB, вы можете установить мягкое ограничение memoryReservation в 128 MiB и жесткое ограничение memory в 300 MiB. Эта конфигурация позволит контейнеру зарезервировать только 128 MiB памяти из оставшихся ресурсов на экземпляре контейнера, но также позволит контейнеру потреблять больше ресурсов памяти при необходимости.

Демoн Docker 20.10.0 или более поздней версии зарезервирует минимум 6 MiB памяти для контейнера. Поэтому не указывайте меньше 6 MiB памяти для ваших контейнеров.

Демoн Docker 19.03.13-ce или более ранней версии зарезервирует минимум 4 MiB памяти для контейнера. Поэтому не указывайте меньше 4 MiB памяти для ваших контейнеров.

links -> (список)

Параметр links позволяет контейнерам взаимодействовать друг с другом без необходимости отображения портов. Этот параметр поддерживается только если режим сети определения задачи равен bridge . Конструкция name:internalName аналогична параметру name:alias в Docker links. Разрешено до 255 букв (строчные и прописные), цифр, символов подчеркивания и дефисов. Этот параметр соответствует параметру Links в команде docker container create и параметру --link в команде docker run.

Примечание

Этот параметр не поддерживается для контейнеров Windows.

Предупреждение

Контейнеры, расположенные на одном экземпляре контейнера, могут взаимодействовать друг с другом без необходимости использования параметров связей или отображения портов хоста. Изоляция сети достигается на экземпляре контейнера с помощью правил безопасности и настроек VPC.

(строка)

portMappings -> (список)

Список сопоставлений портов для контейнера. Сопоставления портов позволяют контейнерам получать доступ к портам на хост-контейнере для отправки или приема трафика.

Для определений задач, использующих режим сети awsvpc, указывайте только containerPort. hostPort можно оставить пустым или оно должно совпадать со значением containerPort.

Сопоставления портов в Windows используют адрес шлюза NetNAT, а не localhost. В Windows нет обратной связи для сопоставлений портов, поэтому вы не можете получить доступ к сопоставленному порту контейнера с самого хоста.

Этот параметр соответствует параметру PortBindings в команде создания контейнера Docker и параметру --publish для команды `docker run`. Если режим сети определения задачи установлен в none, вы не можете указать сопоставления портов. Если режим сети определения задачи установлен в host, порты хоста должны быть либо неопределенными, либо соответствовать порту контейнера в сопоставлении портов.

Примечание

После достижения задачей статуса RUNNING, ручные и автоматические назначения портов хоста и контейнера отображаются в разделе **Связки сети** описания контейнера для выбранной задачи в консоли Amazon ECS. Назначения также отображаются в разделе networkBindings ответов DescribeTasks.

(структура)

Сопоставления портов позволяют контейнерам получать доступ к портам на хост-контейнере для отправки или приема трафика. Сопоставления портов указываются как часть определения контейнера.

Если вы используете контейнеры в задаче с режимом сети awsvpc или host, укажите открытые порты, используя containerPort. hostPort можно оставить пустым или оно должно совпадать со значением containerPort.

Большинство полей этого параметра (containerPort, hostPort, protocol) соответствуют параметру PortBindings в команде создания контейнера Docker и параметру --publish для команды docker run. Если режим сети определения задачи установлен в host, порты хоста должны быть либо неопределенными, либо соответствовать порту контейнера в сопоставлении портов.

Примечание

Вы не можете экспонировать один и тот же порт контейнера для нескольких протоколов. Если вы попытаетесь это сделать, будет возвращено сообщение об ошибке.

После достижения задачей статуса RUNNING, ручные и автоматические назначения портов хоста и контейнера отображаются в разделе networkBindings ответов API DescribeTasks.

containerPort -> (целое число)

Номер порта в контейнере, связанный с указанным пользователем или автоматически назначенным портом хоста.

Если вы используете контейнеры в задаче с режимом сети awsvpc или host, укажите открытые порты, используя containerPort.

Если вы используете контейнеры в задаче с режимом сети bridge и указываете порт контейнера, а не порт хоста, ваш контейнер автоматически получает порт хоста в диапазоне временных портов. Дополнительную информацию см. в hostPort. Сопоставления портов, автоматически назначенные таким образом, не учитываются при подсчете 100 зарезервированных портов контейнера.

hostPort -> (целое число)

Номер порта на хост-инстансе для резервирования контейнера.

Если вы указываете containerPortRange, оставьте это поле пустым, и значение hostPort устанавливается следующим образом:

  • Для контейнеров в задаче с режимом сети awsvpc, значение hostPort устанавливается равным значению containerPort. Это стратегия статического сопоставления.
  • Для контейнеров в задаче с режимом сети bridge агент Amazon ECS находит свободные порты на хосте и автоматически связывает их с портами контейнера. Это стратегия динамического сопоставления.

Если вы используете контейнеры в задаче с режимом сети awsvpc или host, hostPort может быть пустым или совпадать со значением containerPort.

Если вы используете контейнеры в задаче с режимом сети bridge, вы можете указать нерезервируемый порт хоста для сопоставления порта контейнера или опустить hostPort (или установить его в значение 0), указывая containerPort, и ваш контейнер автоматически получит порт из диапазона временных портов операционной системы хост-инстанса и версии Docker.

Предполагаемый диапазон временных портов для Docker версии 1.6.0 и более поздних указан на инстансе в разделе /proc/sys/net/ipv4/ip_local_port_range. Если этот параметр ядра недоступен, используется стандартный диапазон временных портов с 49153 по 65535 (Linux) или с 49152 по 65535 (Windows). Не пытайтесь указать порт хоста в диапазоне временных портов, так как они зарезервированы для автоматического назначения. В целом, порты ниже 32768 находятся вне диапазона временных портов.

Зарезервированные порты по умолчанию: 22 для SSH, порты Docker 2375 и 2376, и порты агента Amazon ECS 51678-51680. Любой порт хоста, ранее указанный в работающей задаче, также зарезервирован во время работы задачи. То есть после остановки задачи порт хоста освобождается. Текущие зарезервированные порты отображаются в разделе remainingResources вывода DescribeContainerInstances. Контейнерный инстанс может иметь до 100 зарезервированных портов одновременно. Это число включает порты по умолчанию. Автоматически назначенные порты не включены в квоту в 100 зарезервированных портов.

protocol -> (строка)

Протокол, используемый для сопоставления портов. Допустимые значения — tcp и udp. По умолчанию — tcp. protocol неизменяем в службе Service Connect. Для обновления этого поля требуется удаление и повторное развертывание службы.

name -> (строка)

Имя, используемое для сопоставления портов. Этот параметр — имя, которое вы используете в serviceConnectConfiguration и vpcLatticeConfigurations службы. Имя может содержать до 64 символов. Символы могут включать строчные буквы, цифры, символы подчеркивания (_) и дефисы (-). Имя не может начинаться с дефиса.

appProtocol -> (строка)

Прикладной протокол, используемый для сопоставления портов. Этот параметр применим только к Service Connect. Рекомендуется устанавливать этот параметр в соответствии с протоколом, используемым вашим приложением. Если вы установите этот параметр, Amazon ECS добавит обработку подключений, специфичных для протокола, к прокси-серверу Service Connect. Если вы установите этот параметр, Amazon ECS добавит телеметрию, специфичную для протокола, в консоль Amazon ECS и CloudWatch.

Если вы не зададите значение для этого параметра, будет использоваться TCP. Однако Amazon ECS не добавляет телеметрию, специфичную для протокола, для TCP.

appProtocol неизменяем в службе Service Connect. Для обновления этого поля требуется удаление и повторное развертывание службы.

Задачи, выполняемые в пространстве имен, могут использовать короткие имена для подключения к службам в этом пространстве имен. Задачи могут подключаться к службам во всех кластерах в пространстве имен. Задачи подключаются через управляемый контейнер-прокси, который собирает журналы и метрики для повышения видимости. Поддержка предоставляется только для задач, созданных службами Amazon ECS. Дополнительную информацию см. в разделе Service Connect в руководстве разработчика Amazon Elastic Container Service.

containerPortRange -> (строка)

Диапазон номеров портов в контейнере, связанный с динамически сопоставленным диапазоном портов хоста.

При указании containerPortRange применяются следующие правила:

  • Вы должны использовать режим сети bridge или режим сети awsvpc.
  • Этот параметр доступен для типов запуска EC2 и Fargate.
  • Этот параметр доступен для операционных систем Linux и Windows.
  • Контейнерный инстанс должен иметь по крайней мере версию 1.67.0 агента контейнеров и по крайней мере версию 1.67.0-1 пакета ecs-init
  • Вы можете указать не более 100 диапазонов портов на контейнер.
  • Вы не указываете hostPortRange. Значение hostPortRange устанавливается следующим образом:
    • Для контейнеров в задаче с режимом сети awsvpc, значение hostPortRange устанавливается равным значению containerPortRange. Это стратегия статического сопоставления.
    • Для контейнеров в задаче с режимом сети bridge агент Amazon ECS находит свободные порты хоста из стандартного диапазона временных портов и передает их Docker для привязки к портам контейнера.
  • Значения containerPortRange находятся в диапазоне от 1 до 65535.
  • Порт может быть включен только в одно сопоставление портов на контейнер.
  • Нельзя указывать перекрывающиеся диапазоны портов.
  • Первый порт в диапазоне должен быть меньше последнего порта в диапазоне.
  • Docker рекомендует отключить прокси-сервер Docker в конфигурационном файле демона Docker при большом количестве портов. Дополнительную информацию см. в проблеме #11185 на сайте Github. Информацию о том, как отключить прокси-сервер Docker в конфигурационном файле демона Docker, см. в разделе Демон Docker в Руководстве разработчика Amazon ECS.

Вы можете вызвать ` DescribeTasks https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_DescribeTasks.html`__ для просмотра hostPortRange, представляющих порты хоста, привязанные к портам контейнера.

essential -> (булево)

Если параметр essential контейнера отмечен как true, и этот контейнер завершается или останавливается по любой причине, все остальные контейнеры, входящие в состав задачи, останавливаются. Если параметр essential контейнера отмечен как false, его отказ не влияет на остальные контейнеры в задаче. Если этот параметр опущен, контейнер считается основным.

Все задачи должны иметь как минимум один основной контейнер. Если ваше приложение состоит из нескольких контейнеров, сгруппируйте контейнеры, используемые для общей цели, в компоненты, и разделите различные компоненты на несколько определений задач. Дополнительную информацию см. в разделе Архитектура приложений в Руководстве разработчика Amazon Elastic Container Service.

restartPolicy -> (структура)

Политика перезапуска контейнера. При настройке политики перезапуска Amazon ECS может перезапустить контейнер без необходимости замены задачи. Для получения дополнительной информации см. Перезапуск отдельных контейнеров в задачах Amazon ECS с политиками перезапуска контейнеров в руководстве разработчика Amazon Elastic Container Service.

enabled -> (boolean)

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

ignoredExitCodes -> (list)

Список кодов завершения, которые Amazon ECS будет игнорировать и не будет пытаться перезапустить. Вы можете указать не более 50 кодов завершения контейнера. По умолчанию Amazon ECS не игнорирует никакие коды завершения.

(integer)

restartAttemptPeriod -> (integer)

Период времени (в секундах), в течение которого контейнер должен работать, прежде чем можно будет попытаться выполнить перезапуск. Контейнер может быть перезапущен только один раз каждые restartAttemptPeriod секунды. Если контейнер не смог работать в течение этого периода времени и завершился раньше, он не будет перезапущен. Вы можете установить минимальное значение restartAttemptPeriod в 60 секунд и максимальное значение restartAttemptPeriod в 1800 секунд. По умолчанию контейнер должен работать в течение 300 секунд, прежде чем его можно будет перезапустить.

entryPoint -> (list)

Предупреждение

Ранние версии агента контейнеров Amazon ECS не правильно обрабатывают entryPoint параметры. Если у вас возникли проблемы с использованием entryPoint, обновите свой агент контейнеров или введите свои команды и аргументы в качестве command элементов массива.

Точка входа, передаваемая контейнеру. Этот параметр соответствует Entrypoint в команде docker container create и параметру --entrypoint к docker run.

(string)

command -> (list)

Команда, передаваемая контейнеру. Этот параметр соответствует Cmd в команде docker container create и параметру COMMAND в docker run. Если есть несколько аргументов, каждый аргумент — это отдельный строковый элемент в массиве.

(string)

environment -> (list)

Переменные среды, которые необходимо передать контейнеру. Этот параметр соответствует Env в команде docker container create и параметру --env в docker run.

Предупреждение

Мы не рекомендуем использовать текстовые переменные среды для конфиденциальной информации, такой как данные учетных данных.

(structure)

Объект пары «ключ-значение».

name -> (string)

Имя пары «ключ-значение». Для переменных среды это имя переменной среды.

value -> (string)

Значение пары «ключ-значение». Для переменных среды это значение переменной среды.

environmentFiles -> (list)

Список файлов, содержащих переменные среды, которые необходимо передать контейнеру. Этот параметр соответствует параметру --env-file к docker run.

Вы можете указать до десяти файлов среды. Файл должен иметь расширение .env. Каждая строка в файле среды содержит переменную среды в формате VARIABLE=VALUE. Строки, начинающиеся с #, рассматриваются как комментарии и игнорируются.

Если переменные среды указаны с помощью параметра environment в определении контейнера, они имеют приоритет над переменными, содержащимися в файле среды. Если указано несколько файлов среды, содержащих одну и ту же переменную, они обрабатываются сверху вниз. Мы рекомендуем использовать уникальные имена переменных. Дополнительные сведения см. в разделе Указание переменных среды в руководстве разработчика Amazon Elastic Container Service.

(structure)

Список файлов, содержащих переменные среды, которые необходимо передать контейнеру. Вы можете указать до десяти файлов среды. Файл должен иметь расширение .env. Каждая строка в файле среды должна содержать переменную среды в формате VARIABLE=VALUE. Строки, начинающиеся с #, рассматриваются как комментарии и игнорируются.

Если переменные среды указаны с помощью параметра environment в определении контейнера, они имеют приоритет над переменными, содержащимися в файле среды. Если указано несколько файлов среды, содержащих одну и ту же переменную, они обрабатываются сверху вниз. Мы рекомендуем использовать уникальные имена переменных. Дополнительные сведения см. в разделе Использование файла для передачи переменных среды в контейнер в руководстве разработчика Amazon Elastic Container Service.

Файлы переменных среды являются объектами в Amazon S3, и все соображения безопасности Amazon S3 применяются.

Для типа запуска Fargate необходимо использовать следующие платформы:

  • Версия платформы Linux 1.4.0 или более поздняя.
  • Версия платформы Windows 1.0.0 или более поздняя.

При использовании типа запуска Fargate следует учитывать следующее:

  • Файл обрабатывается как собственный файл Docker env.
  • Обработка экранирования оболочки не поддерживается.
  • Точка входа контейнера интерпретирует VARIABLE значения.

value -> (string)

Идентификатор ресурса Amazon (ARN) объекта Amazon S3, содержащего файл переменной среды.

type -> (string)

Тип файла, используемый. Файлы среды являются объектами в Amazon S3. Поддерживается только значение s3.

mountPoints -> (list)

Точки монтирования томов данных в вашем контейнере.

Этот параметр соответствует Volumes в команде docker container create и параметру --volume к docker run.

Контейнеры Windows могут монтировать целые каталоги на том же диске, что и $env:ProgramData. Контейнеры Windows не могут монтировать каталоги на другом диске, и точка монтирования не может находиться на разных дисках.

(structure)

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

sourceVolume -> (string)

Имя тома для монтирования. Должно быть именем тома, указанным в параметре name определения задачи volume.

containerPath -> (string)

Путь в контейнере для монтирования хост-тома.

readOnly -> (boolean)

Если это значение true, контейнер имеет доступ только для чтения к тому. Если это значение false, контейнер может записывать в том. Значение по умолчанию — false.

volumesFrom -> (list)

Тома данных для монтирования из другого контейнера. Этот параметр соответствует VolumesFrom в команде docker container create и параметру --volumes-from к docker run.

(structure)

Подробности о томе данных из другого контейнера в том же определении задачи.

sourceContainer -> (string)

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

readOnly -> (boolean)

Если это значение true, контейнер имеет доступ только для чтения к тому. Если это значение false, контейнер может записывать в том. Значение по умолчанию — false.

linuxParameters -> (structure)

Модификации, специфичные для Linux, которые применяются к конфигурации контейнера Docker по умолчанию, такие как возможности ядра Linux. Для получения дополнительной информации см. KernelCapabilities.

Примечание

Этот параметр не поддерживается для контейнеров Windows.

capabilities -> (структура)

Возможности ядра Linux для контейнера, которые добавляются к или удаляются из конфигурации по умолчанию, предоставляемой Docker.

Примечание

Для задач, использующих тип запуска Fargate, capabilities поддерживается для всех версий платформ, но параметр add поддерживается только при использовании платформы версии 1.4.0 или более поздней.

add -> (список)

Возможности ядра Linux для контейнера, которые были добавлены к конфигурации по умолчанию, предоставленной Docker. Этот параметр соответствует CapAdd в команде docker container create и параметру --cap-add для docker run.

Примечание

Задачи, запущенные на Fargate, поддерживают только добавление возможности ядра SYS_PTRACE.

Допустимые значения: "ALL" | "AUDIT_CONTROL" | "AUDIT_WRITE" | "BLOCK_SUSPEND" | "CHOWN" | "DAC_OVERRIDE" | "DAC_READ_SEARCH" | "FOWNER" | "FSETID" | "IPC_LOCK" | "IPC_OWNER" | "KILL" | "LEASE" | "LINUX_IMMUTABLE" | "MAC_ADMIN" | "MAC_OVERRIDE" | "MKNOD" | "NET_ADMIN" | "NET_BIND_SERVICE" | "NET_BROADCAST" | "NET_RAW" | "SETFCAP" | "SETGID" | "SETPCAP" | "SETUID" | "SYS_ADMIN" | "SYS_BOOT" | "SYS_CHROOT" | "SYS_MODULE" | "SYS_NICE" | "SYS_PACCT" | "SYS_PTRACE" | "SYS_RAWIO" | "SYS_RESOURCE" | "SYS_TIME" | "SYS_TTY_CONFIG" | "SYSLOG" | "WAKE_ALARM"

(строка)

drop -> (список)

Возможности ядра Linux для контейнера, которые были удалены из конфигурации по умолчанию, предоставленной Docker. Этот параметр соответствует CapDrop в команде docker container create и параметру --cap-drop для docker run.

Допустимые значения: "ALL" | "AUDIT_CONTROL" | "AUDIT_WRITE" | "BLOCK_SUSPEND" | "CHOWN" | "DAC_OVERRIDE" | "DAC_READ_SEARCH" | "FOWNER" | "FSETID" | "IPC_LOCK" | "IPC_OWNER" | "KILL" | "LEASE" | "LINUX_IMMUTABLE" | "MAC_ADMIN" | "MAC_OVERRIDE" | "MKNOD" | "NET_ADMIN" | "NET_BIND_SERVICE" | "NET_BROADCAST" | "NET_RAW" | "SETFCAP" | "SETGID" | "SETPCAP" | "SETUID" | "SYS_ADMIN" | "SYS_BOOT" | "SYS_CHROOT" | "SYS_MODULE" | "SYS_NICE" | "SYS_PACCT" | "SYS_PTRACE" | "SYS_RAWIO" | "SYS_RESOURCE" | "SYS_TIME" | "SYS_TTY_CONFIG" | "SYSLOG" | "WAKE_ALARM"

(строка)

devices -> (список)

Любые устройства хоста, которые необходимо экспонировать для контейнера. Этот параметр соответствует Devices в команде docker container create и параметру --device для docker run.

Примечание

Если вы используете задачи с типом запуска Fargate, параметр devices не поддерживается.

(структура)

Объект, представляющий устройство хоста экземпляра контейнера.

hostPath -> (строка)

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

containerPath -> (строка)

Путь внутри контейнера, в котором нужно экспонировать устройство хоста.

permissions -> (список)

Явные разрешения для контейнера на устройство. По умолчанию контейнер имеет разрешения для read , write и mknod для устройства.

(строка)

initProcessEnabled -> (логическое значение)

Запустить процесс init внутри контейнера, который перенаправляет сигналы и собирает процессы. Этот параметр соответствует параметру --init для docker run. Этот параметр требует версию 1.25 Docker Remote API или более позднюю на вашем экземпляре контейнера. Чтобы проверить версию Docker Remote API на вашем экземпляре контейнера, войдите в ваш экземпляр контейнера и выполните следующую команду: sudo docker version --format '{{.Server.APIVersion}}'

sharedMemorySize -> (целое число)

Значение размера (в MiB) тома /dev/shm. Этот параметр соответствует параметру --shm-size для docker run.

Примечание

Если вы используете задачи с типом запуска Fargate, параметр sharedMemorySize не поддерживается.

tmpfs -> (список)

Путь контейнера, параметры монтирования и размер (в MiB) монтирования tmpfs. Этот параметр соответствует параметру --tmpfs для docker run.

Примечание

Если вы используете задачи с типом запуска Fargate, параметр tmpfs не поддерживается.

(структура)

Путь контейнера, параметры монтирования и размер монтирования tmpfs.

containerPath -> (строка)

Абсолютный путь к файлу, где должен быть смонтирован том tmpfs.

size -> (целое число)

Максимальный размер (в MiB) тома tmpfs.

mountOptions -> (список)

Список параметров монтирования tmpfs.

Допустимые значения: "defaults" | "ro" | "rw" | "suid" | "nosuid" | "dev" | "nodev" | "exec" | "noexec" | "sync" | "async" | "dirsync" | "remount" | "mand" | "nomand" | "atime" | "noatime" | "diratime" | "nodiratime" | "bind" | "rbind" | "unbindable" | "runbindable" | "private" | "rprivate" | "shared" | "rshared" | "slave" | "rslave" | "relatime" | "norelatime" | "strictatime" | "nostrictatime" | "mode" | "uid" | "gid" | "nr_inodes" | "nr_blocks" | "mpol"

(строка)

maxSwap -> (целое число)

Общий объем памяти подкачки (в MiB), который может использовать контейнер. Этот параметр будет преобразован в параметр --memory-swap для docker run, где значение будет суммой памяти контейнера плюс значение maxSwap.

Если значение maxSwap равно 0, контейнер не будет использовать подкачку. Допустимые значения — 0 или любое положительное целое число. Если параметр maxSwap опущен, контейнер будет использовать конфигурацию подкачки для экземпляра контейнера, на котором он работает. Для использования параметра swappiness необходимо задать значение maxSwap.

Примечание

Если вы используете задачи с типом запуска Fargate, параметр maxSwap не поддерживается.

Если вы используете задачи на Amazon Linux 2023, параметр swappiness не поддерживается.

swappiness -> (целое число)

Это позволяет настроить поведение подкачки памяти контейнера. Значение swappiness равно 0, это приведет к тому, что подкачка не будет происходить, если это не абсолютно необходимо. Значение swappiness равно 100, это приведет к очень агрессивному обмену страницами. Допустимые значения — целые числа от 0 до 100. Если параметр swappiness не указан, используется значение по умолчанию 60. Если значение не указано для параметра maxSwap, то этот параметр игнорируется. Этот параметр соответствует параметру --memory-swappiness для docker run.

Примечание

Если вы используете задачи с типом запуска Fargate, параметр swappiness не поддерживается.

Если вы используете задачи на Amazon Linux 2023, параметр swappiness не поддерживается.

secrets -> (список)

Секреты, которые необходимо передать контейнеру. Для получения дополнительной информации см. Раздел Определение конфиденциальных данных в Руководстве разработчика Amazon Elastic Container Service.

(структура)

Объект, представляющий секрет, который нужно экспонировать для контейнера. Секреты могут быть экспонированы контейнеру следующим образом:

  • Для внедрения конфиденциальных данных в контейнеры в качестве переменных среды используйте параметр определения контейнера secrets.
  • Для ссылки на конфиденциальную информацию в конфигурации логов контейнера используйте параметр определения контейнера secretOptions.

Для получения дополнительной информации см. Раздел Определение конфиденциальных данных в Руководстве разработчика Amazon Elastic Container Service.

name -> (строка)

Имя секрета.

valueFrom -> (строка)

Секрет, который необходимо экспонировать для контейнера. Поддерживаемые значения — полный ARN секрета Secrets Manager или полный ARN параметра в SSM Parameter Store.

Сведения о необходимых разрешениях Identity and Access Management см. в Разделе Требуемые разрешения IAM для секретов Amazon ECS (для Secrets Manager) или Требуемые разрешения IAM для секретов Amazon ECS (для хранилища параметров Systems Manager) в Руководстве разработчика Amazon Elastic Container Service.

Примечание

Если параметр хранилища параметров SSM существует в той же области, что и задача, которую вы запускаете, вы можете использовать полный ARN или имя параметра. Если параметр находится в другой области, должен быть указан полный ARN.

dependsOn -> (список)

Определённые зависимости для запуска и завершения контейнера. Контейнер может содержать несколько зависимостей от других контейнеров в определении задачи. При определении зависимости для запуска контейнера, для завершения контейнера она меняется на обратную.

Для задач, использующих тип запуска EC2, экземпляры контейнеров требуют как минимум версии 1.26.0 агента контейнера для включения зависимостей контейнеров. Однако рекомендуется использовать последнюю версию агента контейнера. Сведения о проверке версии агента и обновлении до последней версии см. в разделе «Обновление агента Amazon ECS контейнера» в руководстве разработчика Amazon Elastic Container Service. Если вы используете оптимизированный под Amazon ECS образ Amazon Linux AMI, ваш экземпляр требует как минимум версии 1.26.0-1 пакета ecs-init. Если ваши экземпляры контейнеров запущены с версии 20190301 или более поздней, то они содержат необходимые версии агента контейнера и ecs-init. Дополнительные сведения см. в разделе «Оптимизированный под Amazon ECS образ Amazon Linux AMI» в руководстве разработчика Amazon Elastic Container Service.

Для задач, использующих тип запуска Fargate, задача или служба требует следующих платформ:

  • Версия платформы Linux 1.3.0 или более поздняя.
  • Версия платформы Windows 1.0.0 или более поздняя.

(структура)

Определённые зависимости для запуска и завершения контейнера. Контейнер может содержать несколько зависимостей. При определении зависимости для запуска контейнера, для завершения контейнера она меняется на обратную.

Ваши экземпляры контейнеров Amazon ECS требуют как минимум версии 1.26.0 агента контейнера для использования зависимостей контейнеров. Однако рекомендуется использовать последнюю версию агента контейнера. Сведения о проверке версии агента и обновлении до последней версии см. в разделе «Обновление агента Amazon ECS контейнера» в руководстве разработчика Amazon Elastic Container Service. Если вы используете оптимизированный под Amazon ECS образ Amazon Linux AMI, ваш экземпляр требует как минимум версии 1.26.0-1 пакета ecs-init. Если ваши экземпляры контейнеров запущены с версии 20190301 или более поздней, то они содержат необходимые версии агента контейнера и ecs-init. Дополнительные сведения см. в разделе «Оптимизированный под Amazon ECS образ Amazon Linux AMI» в руководстве разработчика Amazon Elastic Container Service.

Примечание

Для задач, использующих тип запуска Fargate, задача или служба требует следующих платформ:

  • Версия платформы Linux 1.3.0 или более поздняя.
  • Версия платформы Windows 1.0.0 или более поздняя.

Дополнительные сведения о создании зависимости контейнера см. в разделе «Зависимость контейнера» в руководстве разработчика Amazon Elastic Container Service.

containerName -> (строка)

Название контейнера.

condition -> (строка)

Условие зависимости контейнера. Ниже приведены доступные условия и их поведение:

  • START - Это условие моделирует поведение ссылок и томов на сегодняшний день. Оно проверяет, что зависимый контейнер запущен, прежде чем разрешить запуск других контейнеров.
  • COMPLETE - Это условие проверяет, что зависимый контейнер завершил выполнение (выход), прежде чем разрешить запуск других контейнеров. Это может быть полезно для необязательных контейнеров, которые выполняют сценарий и затем выходят. Это условие не может быть задано для основного контейнера.
  • SUCCESS - Это условие такое же, как COMPLETE, но также требует, чтобы контейнер завершил выполнение со статусом zero. Это условие не может быть задано для основного контейнера.
  • HEALTHY - Это условие проверяет, что зависимый контейнер прошёл проверку работоспособности Docker, прежде чем разрешить запуск других контейнеров. Это требует, чтобы зависимый контейнер имел настроенные проверки работоспособности. Это условие подтверждается только при запуске задачи.

startTimeout -> (целое число)

Длительность ожидания (в секундах), прежде чем отказаться от разрешения зависимостей для контейнера. Например, вы указываете два контейнера в определении задачи, где containerA зависит от containerB, достигающего статуса COMPLETE, SUCCESS или HEALTHY. Если для containerB указано значение startTimeout, и он не достигнет желаемого статуса в течение этого времени, то containerA откажется и не запустится. В результате задача переходит в состояние STOPPED.

Примечание

Когда используется переменная конфигурации агента контейнера ECS_CONTAINER_START_TIMEOUT, она применяется независимо от этого значения таймаута запуска.

Для задач, использующих тип запуска Fargate, задача или служба требует следующих платформ:

  • Версия платформы Linux 1.3.0 или более поздняя.
  • Версия платформы Windows 1.0.0 или более поздняя.

Для задач, использующих тип запуска EC2, ваши экземпляры контейнеров требуют как минимум версии 1.26.0 агента контейнера для использования значения таймаута запуска контейнера. Однако рекомендуется использовать последнюю версию агента контейнера. Сведения о проверке версии агента и обновлении до последней версии см. в разделе «Обновление агента Amazon ECS контейнера» в руководстве разработчика Amazon Elastic Container Service. Если вы используете оптимизированный под Amazon ECS образ Amazon Linux AMI, ваш экземпляр требует как минимум версии 1.26.0-1 пакета ecs-init. Если ваши экземпляры контейнеров запущены с версии 20190301 или более поздней, то они содержат необходимые версии агента контейнера и ecs-init. Дополнительные сведения см. в разделе «Оптимизированный под Amazon ECS образ Amazon Linux AMI» в руководстве разработчика Amazon Elastic Container Service.

Допустимые значения для Fargate — от 2 до 120 секунд.

stopTimeout -> (целое число)

Длительность ожидания (в секундах), прежде чем контейнер будет принудительно завершён, если он не завершится нормально самостоятельно.

Для задач, использующих тип запуска Fargate, задача или служба требует следующих платформ:

  • Версия платформы Linux 1.3.0 или более поздняя.
  • Версия платформы Windows 1.0.0 или более поздняя.

Для задач, использующих тип запуска Fargate, максимальное значение таймаута остановки составляет 120 секунд, а если параметр не указан, используется значение по умолчанию 30 секунд.

Для задач, использующих тип запуска EC2, если параметр stopTimeout не указан, используется значение, заданное для переменной конфигурации агента Amazon ECS контейнера ECS_CONTAINER_STOP_TIMEOUT. Если ни параметр stopTimeout, ни переменная конфигурации агента ECS_CONTAINER_STOP_TIMEOUT не заданы, используются значения по умолчанию 30 секунд для контейнеров Linux и 30 секунд для контейнеров Windows. Ваши экземпляры контейнеров требуют как минимум версии 1.26.0 агента контейнера для использования значения таймаута остановки контейнера. Однако рекомендуется использовать последнюю версию агента контейнера. Сведения о проверке версии агента и обновлении до последней версии см. в разделе «Обновление агента Amazon ECS контейнера» в руководстве разработчика Amazon Elastic Container Service. Если вы используете оптимизированный под Amazon ECS образ Amazon Linux AMI, ваш экземпляр требует как минимум версии 1.26.0-1 пакета ecs-init. Если ваши экземпляры контейнеров запущены с версии 20190301 или более поздней, то они содержат необходимые версии агента контейнера и ecs-init. Дополнительные сведения см. в разделе «Оптимизированный под Amazon ECS образ Amazon Linux AMI» в руководстве разработчика Amazon Elastic Container Service.

Допустимые значения для Fargate — от 2 до 120 секунд.

versionConsistency -> (строка)

Указывает, будет ли Amazon ECS разрешать тег образа контейнера, указанный в определении контейнера, на дайджест образа. По умолчанию значение равно enabled. Если вы установите значение для контейнера как disabled, Amazon ECS не будет разрешать предоставленный тег образа контейнера в дайджест и будет использовать исходный URI образа, указанный в определении контейнера, для развертывания. Дополнительные сведения о разрешении образа контейнера см. в разделе «Разрешение образа контейнера» в руководстве разработчика Amazon ECS.

hostname -> (строка)

Имя хоста для вашего контейнера. Этот параметр соответствует параметру Hostname в команде создания контейнера Docker и параметру --hostname в команде docker run.

Примечание

Параметр hostname не поддерживается при использовании режима сети awsvpc.

user -> (строка)

Пользователь, используемый внутри контейнера. Этот параметр соответствует параметру User в команде создания контейнера Docker и параметру --user в команде docker run.

Предупреждение

При запуске задач с использованием режима сети host не запускайте контейнеры с помощью пользователя root (UID 0). Рекомендуется использовать не-root пользователя для повышения безопасности.

Вы можете указать user, используя следующие форматы. При указании UID или GID, вы должны указать его как положительное целое число.

  • user
  • user:group
  • uid
  • uid:gid
  • user:gid
  • uid:group

Примечание

Этот параметр не поддерживается для контейнеров Windows.

workingDirectory -> (строка)

Рабочая директория для запуска команд внутри контейнера. Этот параметр соответствует параметру WorkingDir в команде создания контейнера Docker и параметру --workdir в команде docker run.

disableNetworking -> (булево)

Когда этот параметр имеет значение true, сеть отключена внутри контейнера. Этот параметр соответствует параметру NetworkDisabled в команде создания контейнера Docker.

Примечание

Этот параметр не поддерживается для контейнеров Windows.

privileged -> (булево)

Когда этот параметр имеет значение true, контейнеру предоставляются расширенные привилегии на экземпляре хост-контейнера (аналогично пользователю root). Этот параметр соответствует параметру Privileged в команде создания контейнера Docker и параметру --privileged в команде docker run

Примечание

Этот параметр не поддерживается для контейнеров Windows или задач, выполняемых на Fargate.

readonlyRootFilesystem -> (булево)

Когда этот параметр имеет значение true, контейнеру предоставляется чтение-только доступ к файловой системе корня. Этот параметр соответствует параметру ReadonlyRootfs в команде создания контейнера Docker и параметру --read-only в команде docker run.

Примечание

Этот параметр не поддерживается для контейнеров Windows.

dnsServers -> (список)

Список DNS-серверов, предоставляемых контейнеру. Этот параметр соответствует Dns в команде docker container create и параметру --dns команды docker run.

Примечание

Этот параметр не поддерживается для контейнеров Windows.

(строка)

dnsSearchDomains -> (список)

Список DNS-доменных имен поиска, предоставляемых контейнеру. Этот параметр соответствует DnsSearch в команде docker container create и параметру --dns-search команды docker run.

Примечание

Этот параметр не поддерживается для контейнеров Windows.

(строка)

extraHosts -> (список)

Список сопоставлений имен хостов и IP-адресов, добавляемых к файлу /etc/hosts в контейнере. Этот параметр соответствует ExtraHosts в команде docker container create и параметру --add-host команды docker run.

Примечание

Этот параметр не поддерживается для контейнеров Windows или задач, использующих режим сети awsvpc.

(структура)

Имена хостов и записи IP-адресов, добавляемые в файл /etc/hosts контейнера с помощью параметра extraHosts его определения ContainerDefinition.

hostname -> (строка)

Имя хоста, используемое в записи /etc/hosts.

ipAddress -> (строка)

IP-адрес, используемый в записи /etc/hosts.

dockerSecurityOptions -> (список)

Список строк для настройки нескольких систем безопасности. Это поле недействительно для контейнеров в задачах, использующих тип запуска Fargate.

Для задач Linux на EC2 этот параметр может использоваться для ссылки на пользовательские метки для систем многоуровневой безопасности SELinux и AppArmor.

Для любых задач на EC2 этот параметр может использоваться для ссылки на файл спецификации учетных данных, который настраивает контейнер для аутентификации Active Directory. Дополнительную информацию см. в разделах Использование gMSA для контейнеров Windows и Использование gMSA для контейнеров Linux в руководстве разработчика Amazon Elastic Container Service.

Этот параметр соответствует SecurityOpt в команде docker container create и параметру --security-opt команды docker run.

Примечание

Агент контейнеров Amazon ECS, работающий на экземпляре контейнера, должен зарегистрироваться с переменными окружения ECS_SELINUX_CAPABLE=true или ECS_APPARMOR_CAPABLE=true, прежде чем контейнеры на этом экземпляре смогут использовать эти параметры безопасности. Дополнительную информацию см. в разделе Настройка агента контейнеров Amazon ECS в руководстве разработчика Amazon Elastic Container Service.

Допустимые значения: “no-new-privileges” | “apparmor:PROFILE” | “label:value” | “credentialspec:CredentialSpecFilePath”

(строка)

interactive -> (булево)

При значении true можно развертывать контейнерные приложения, требующие stdin или выделение tty. Этот параметр соответствует OpenStdin в команде docker container create и параметру --interactive команды docker run.

pseudoTerminal -> (булево)

При значении true выделяется TTY. Этот параметр соответствует Tty в команде docker container create и параметру --tty команды docker run.

dockerLabels -> (карта)

Мапа ключ/значение меток, которые нужно добавить в контейнер. Этот параметр соответствует Labels в команде docker container create и параметру --label команды docker run. Этот параметр требует версии Docker Remote API 1.18 или выше на вашем экземпляре контейнера. Чтобы проверить версию Docker Remote API на вашем экземпляре контейнера, войдите в него и выполните следующую команду: sudo docker version --format '{{.Server.APIVersion}}'

key -> (строка)

value -> (строка)

ulimits -> (список)

Список ulimits для установки в контейнере. Если значение ulimit указано в определении задачи, оно переопределяет значения по умолчанию, установленные Docker. Этот параметр соответствует Ulimits в команде docker container create и параметру --ulimit команды docker run. Допустимые имена отображаются в типе данных Ulimit.

Задачи Amazon ECS, размещенные на Fargate, используют значения пределов ресурсов по умолчанию, установленные операционной системой, за исключением параметра предела ресурса nofile, который Fargate переопределяет. Параметр предела ресурса nofile устанавливает ограничение на количество открытых файлов, которые может использовать контейнер. Значение мягкого ограничения nofile по умолчанию равно 65535, а жесткое ограничение — 65535.

Этот параметр требует версии Docker Remote API 1.18 или выше на вашем экземпляре контейнера. Чтобы проверить версию Docker Remote API на вашем экземпляре контейнера, войдите в него и выполните следующую команду: sudo docker version --format '{{.Server.APIVersion}}'

Примечание

Этот параметр не поддерживается для контейнеров Windows.

(структура)

Настройки ulimit, передаваемые контейнеру.

Задачи Amazon ECS, размещенные на Fargate, используют значения пределов ресурсов по умолчанию, установленные операционной системой, за исключением параметра предела ресурса nofile, который Fargate переопределяет. Параметр предела ресурса nofile устанавливает ограничение на количество открытых файлов, которые может использовать контейнер. Значение мягкого ограничения nofile по умолчанию равно 65535, а жесткое ограничение — 65535.

Вы можете указать настройки ulimit для контейнера в определении задачи.

name -> (строка)

Имя type ulimit.

softLimit -> (целое число)

Мягкое ограничение для типа ulimit. Значение может быть указано в байтах, секундах или в виде счётчика, в зависимости от type ulimit.

hardLimit -> (целое число)

Жесткое ограничение для типа ulimit. Значение может быть указано в байтах, секундах или в виде счётчика, в зависимости от type ulimit.

logConfiguration -> (структура)

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

Этот параметр соответствует LogConfig в команде создания контейнера Docker и параметру --log-driver для команды docker run. По умолчанию контейнеры используют тот же драйвер ведения журнала, что и демон Docker. Однако контейнер может использовать другой драйвер ведения журнала, отличный от используемого демоном Docker, указав драйвер журнала в определении контейнера. Чтобы использовать другой драйвер ведения журнала для контейнера, необходимо правильно настроить систему журналов на экземпляре контейнера (или на другом сервере журналов для удалённых вариантов ведения журналов).

Примечание

Amazon ECS в настоящее время поддерживает подмножество драйверов ведения журнала, доступных для демона Docker (показано в типе данных LogConfiguration). Дополнительные драйверы журналов могут быть доступны в будущих версиях агента Amazon ECS для контейнеров.

Этот параметр требует версии Docker Remote API 1.18 или выше на вашем экземпляре контейнера. Чтобы проверить версию Docker Remote API на вашем экземпляре контейнера, войдите в ваш экземпляр контейнера и выполните следующую команду: sudo docker version --format '{{.Server.APIVersion}}'

Примечание

Агент Amazon ECS, работающий на экземпляре контейнера, должен зарегистрировать доступные на этом экземпляре драйверы ведения журнала в переменной окружения ECS_AVAILABLE_LOGGING_DRIVERS, прежде чем контейнеры, размещённые на этом экземпляре, смогут использовать эти параметры конфигурации ведения журнала. Дополнительную информацию см. в разделе Amazon ECS Container Agent Configuration в руководстве разработчика Amazon Elastic Container Service.

logDriver -> (строка)

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

Для задач на Fargate поддерживаются драйверы журналов awslogs , splunk и awsfirelens.

Для задач, размещённых на экземплярах Amazon EC2, поддерживаются драйверы журналов awslogs , fluentd , gelf , json-file , journald , syslog , splunk и awsfirelens.

Дополнительную информацию об использовании драйвера ведения журнала awslogs см. в разделе Отправка журналов Amazon ECS в CloudWatch в руководстве разработчика Amazon Elastic Container Service.

Дополнительную информацию об использовании драйвера ведения журнала awsfirelens см. в разделе Отправка журналов Amazon ECS в Amazon Web Services-сервис или Amazon Web Services-партнёра.

Примечание

Если у вас есть пользовательский драйвер, который не указан в списке, вы можете создать форк проекта агента Amazon ECS для контейнеров, доступного на GitHub, и настроить его для работы с этим драйвером. Мы рекомендуем отправлять запросы на добавление изменений, которые вы хотели бы включить. Однако в настоящее время мы не предоставляем поддержку для запуска изменённых копий этого программного обеспечения.

options -> (карта)

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

Доступные параметры зависят от драйвера ведения журнала. Некоторые параметры, которые можно указать, когда вы используете драйвер ведения журнала awslogs для маршрутизации журналов в Amazon CloudWatch, включают следующие:

awslogs-create-group

Необязательно

Укажите, хотите ли вы, чтобы группа журналов создавалась автоматически. Если этот параметр не указан, он по умолчанию устанавливается в значение false.

Примечание

Ваша политика IAM должна включать разрешение logs:CreateLogGroup, прежде чем вы попытаетесь использовать awslogs-create-group.

awslogs-region

Обязательно

Укажите регион Amazon Web Services, в который драйвер ведения журнала awslogs должен отправлять ваши журналы Docker. Вы можете направить все журналы из кластеров в разных регионах в один регион в CloudWatch Logs, чтобы они все были видны в одном месте. В противном случае вы можете разделить их по регионам для большей детализации. Убедитесь, что указанная группа журналов существует в регионе, который вы указали с помощью этого параметра.

awslogs-group

Обязательно

Убедитесь, что вы указали группу журналов, в которую драйвер ведения журнала awslogs отправляет свои потоки журналов.

awslogs-stream-prefix

Обязательно при использовании Fargate. Необязательно при использовании EC2.

Используйте параметр awslogs-stream-prefix, чтобы связать поток журнала с указанным префиксом, именем контейнера и идентификатором задачи Amazon ECS, к которой принадлежит контейнер. Если вы укажете префикс с помощью этого параметра, то поток журнала будет иметь формат prefix-name/container-name/ecs-task-id.

Если вы не укажете префикс с помощью этого параметра, то поток журнала будет назван в соответствии с идентификатором контейнера, назначенным демоном Docker на экземпляре контейнера. Поскольку отслеживание журналов до контейнера, который их отправил, только по идентификатору контейнера Docker (который доступен только на экземпляре контейнера) затруднительно, рекомендуется указывать префикс с помощью этого параметра.

Для служб Amazon ECS вы можете использовать имя службы в качестве префикса. Это позволяет отслеживать потоки журналов до службы, к которой принадлежит контейнер, имени контейнера, который их отправил, и идентификатору задачи, к которой принадлежит контейнер.

Вы должны указать префикс потока для отображения журналов в панели Журналы при использовании консоли Amazon ECS.

awslogs-datetime-format

Необязательно

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

Пример использования этого формата — парсинг вывода, такого как дамп стека, который в противном случае может записываться в несколько записей. Правильный шаблон позволяет захватить его в одной записи.

Дополнительную информацию см. в разделе awslogs-datetime-format.

Вы не можете настроить одновременно параметры awslogs-datetime-format и awslogs-multiline-pattern.

Примечание

Многострочный журнал выполняет парсинг и сопоставление всех сообщений журнала с помощью регулярных выражений. Это может негативно повлиять на производительность ведения журнала.

awslogs-multiline-pattern

Необязательно

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

Дополнительную информацию см. в разделе awslogs-multiline-pattern.

Этот параметр игнорируется, если также настроен параметр awslogs-datetime-format.

Вы не можете настроить одновременно параметры awslogs-datetime-format и awslogs-multiline-pattern.

Примечание

Многострочный журнал выполняет парсинг и сопоставление всех сообщений журнала с помощью регулярных выражений. Это может негативно повлиять на производительность ведения журнала.

Следующие параметры применяются ко всем поддерживаемым драйверам журналов.

mode

Необязательно

Допустимые значения: non-blocking | blocking

Этот параметр определяет режим доставки сообщений журнала из контейнера в указанный драйвер ведения журнала с помощью параметра logDriver. Выбранный режим доставки влияет на доступность приложения, когда поток журналов из контейнера прерывается.

Если вы используете режим blocking, и поток журналов прерывается, вызовы из кода контейнера для записи в потоки stdout и stderr будут блокироваться. В результате будет заблокирована нить ведения журнала приложения. Это может привести к тому, что приложение станет неотзывчивым и к ошибке проверки состояния контейнера.

Если вы используете режим non-blocking, журналы контейнера вместо этого хранятся в промежуточном буфере в оперативной памяти, настроенном с помощью параметра max-buffer-size. Это предотвращает неотзывчивость приложения, когда журналы не могут быть отправлены. Мы рекомендуем использовать этот режим, если вы хотите обеспечить доступность службы и готовы к потере некоторых журналов. Дополнительную информацию см. в статье Предотвращение потери журналов с помощью неблокирующего режима в драйвере контейнерного журнала `awslogs` <http://aws.amazon.com/blogs/containers/preventing-log-loss-with-non-blocking-mode-in-the-awslogs-container-log-driver/>`__.

Вы можете установить значение по умолчанию для mode для всех контейнеров в определённом регионе Amazon Web Services, используя настройку учётной записи defaultLogDriverMode. Если вы не укажете параметр mode или не настроили настройку учётной записи, Amazon ECS будет использовать режим по умолчанию blocking. Дополнительную информацию о настройке учётной записи см. в разделе Режим драйвера ведения журнала по умолчанию в руководстве разработчика Amazon Elastic Container Service.

max-buffer-size

Необязательно

Значение по умолчанию: 1m

Когда используется режим non-blocking, параметр журнала max-buffer-size управляет размером буфера, используемого для временного хранения сообщений. Убедитесь, что вы указали достаточный размер буфера, исходя из характеристик вашего приложения. Когда буфер заполнится, дальнейшие журналы не будут храниться. Журналы, которые не могут быть сохранены, теряются.

Чтобы маршрутизировать журналы с помощью маршрутизатора журналов splunk, необходимо указать splunk-token и splunk-url.

При использовании маршрутизатора журналов awsfirelens для маршрутизации журналов в пункт назначения Amazon Web Services-сервиса или Amazon Web Services-партнёрской сети для хранения и анализа журналов, вы можете установить параметр log-driver-buffer-limit для ограничения количества событий, буферизованных в памяти, перед отправкой в контейнер маршрутизатора журналов. Это может помочь устранить потенциальную проблему потери журналов, поскольку высокая пропускная способность может привести к недостатку памяти для буфера внутри Docker.

Другие параметры, которые можно указать при использовании awsfirelens для маршрутизации журналов, зависят от места назначения. При экспорте журналов в Amazon Data Firehose можно указать регион Amazon Web Services с помощью region и имя потока журнала с помощью delivery_stream.

При экспорте журналов в Amazon Kinesis Data Streams можно указать регион Amazon Web Services с помощью region и имя потока данных с помощью stream.

При экспорте журналов в Amazon OpenSearch Service можно указать параметры, такие как Name, Host (адрес OpenSearch Service без протокола), Port, Index, Type, Aws_auth, Aws_region, Suppress_Type_Name и tls. Дополнительную информацию см. в разделе Под капотом: FireLens для задач Amazon ECS.

При экспорте журналов в Amazon S3 вы можете указать ведро с помощью параметра bucket. Вы также можете указать параметры region, total_file_size, upload_timeout и use_put_object.

Этот параметр требует версии Docker Remote API 1.19 или выше на вашем экземпляре контейнера. Чтобы проверить версию Docker Remote API на вашем экземпляре контейнера, войдите в ваш экземпляр контейнера и выполните следующую команду: sudo docker version --format '{{.Server.APIVersion}}'

key -> (строка)

value -> (строка)

secretOptions -> (список)

Секреты для конфигурации логов. Дополнительную информацию см. в разделе «Указание конфиденциальных данных» в Руководстве разработчика Amazon Elastic Container Service.

(структура)

Объект, представляющий секрет, который необходимо предоставить контейнеру. Секреты могут быть предоставлены контейнеру следующим образом:

  • Для вставки конфиденциальных данных в контейнеры в качестве переменных среды используйте параметр определения контейнера secrets.
  • Для ссылки на конфиденциальную информацию в конфигурации логов контейнера используйте параметр определения контейнера secretOptions.

Дополнительную информацию см. в разделе «Указание конфиденциальных данных» в Руководстве разработчика Amazon Elastic Container Service.

name -> (строка)

Имя секрета.

valueFrom -> (строка)

Секрет, который необходимо предоставить контейнеру. Поддерживаемые значения — либо полный ARN секрета Secrets Manager, либо полный ARN параметра в хранилище параметров SSM.

Сведения о необходимых разрешениях Identity and Access Management см. в разделе Требуемые разрешения IAM для секретов Amazon ECS (для Secrets Manager) или Требуемые разрешения IAM для секретов Amazon ECS (для хранилища параметров Systems Manager) в Руководстве разработчика Amazon Elastic Container Service.

Примечание

Если параметр хранилища параметров SSM существует в той же области, что и задача, которую вы запускаете, то вы можете использовать либо полный ARN, либо имя параметра. Если параметр находится в другой области, то должен быть указан полный ARN.

healthCheck -> (структура)

Команда проверки состояния контейнера и связанные с ней параметры конфигурации для контейнера. Этот параметр соответствует HealthCheck в команде docker container create и параметру HEALTHCHECK в команде docker run.

command -> (список)

Массив строк, представляющий команду, которую выполняет контейнер, чтобы определить, работает ли он корректно. Массив строк должен начинаться с CMD, чтобы выполнить аргументы команды напрямую, или CMD-SHELL, чтобы выполнить команду с помощью стандартной оболочки контейнера.

При использовании панели JSON Amazon Web Services Management Console, командной строки или API заключите список команд в двойные кавычки и квадратные скобки.

[ "CMD-SHELL", "curl -f http://localhost/ || exit 1" ]

При использовании Amazon Web Services Management Console двойные кавычки и квадратные скобки не используются.

CMD-SHELL, curl -f http://localhost/ || exit 1

Код возврата 0 означает успех, а ненулевой код возврата — неудачу. Дополнительную информацию см. в разделе HealthCheck в команде docker container create.

(строка)

interval -> (целое число)

Период времени в секундах между каждым выполнением проверки состояния. Можно указать от 5 до 300 секунд. Значение по умолчанию — 30 секунд. Это значение применяется только при указании command.

timeout -> (целое число)

Период времени в секундах ожидания успешного выполнения проверки состояния перед тем, как это считается ошибкой. Можно указать от 2 до 60 секунд. Значение по умолчанию — 5. Это значение применяется только при указании command.

retries -> (целое число)

Количество попыток повторного выполнения не удавшейся проверки состояния, прежде чем контейнер считается неисправным. Можно указать от 1 до 10 попыток. Значение по умолчанию — 3. Это значение применяется только при указании command.

startPeriod -> (целое число)

Необязательный период отсрочки, предоставляющий контейнерам время на загрузку перед тем, как провалы в проверке состояния учитываются в максимальном количестве попыток. Можно указать от 0 до 300 секунд. По умолчанию startPeriod выключено. Это значение применяется только при указании command.

Примечание

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

systemControls -> (список)

Список параметризованных параметров ядра для установки в контейнере. Этот параметр соответствует Sysctls в команде docker container create и параметру --sysctl в команде docker run. Например, вы можете настроить net.ipv4.tcp_keepalive_time для поддержания долгоживущих подключений.

(структура)

Список параметризованных параметров ядра для установки в контейнере. Этот параметр соответствует Sysctls в команде docker container create и параметру --sysctl в команде docker run. Например, вы можете настроить net.ipv4.tcp_keepalive_time для поддержания долгоживущих подключений.

Не рекомендуется указывать сетевые параметры systemControls для нескольких контейнеров в одной задаче, которая также использует сетевой режим awsvpc или host. Это имеет следующие недостатки:

  • Для задач, использующих сетевой режим awsvpc, включая Fargate, если вы устанавливаете systemControls для любого контейнера, это применяется ко всем контейнерам в задаче. Если вы устанавливаете разные systemControls для нескольких контейнеров в одной задаче, контейнер, который стартует последним, определяет, какие systemControls вступят в силу.
  • Для задач, использующих сетевой режим host, не поддерживаются сетевые пространства ядра systemControls.

Если вы настраиваете пространство имен IPC для использования контейнеров в задаче, для ваших системных элементов управления применяются следующие условия. Дополнительную информацию см. в разделе Режим IPC.

  • Для задач, использующих режим IPC host, не поддерживаются пространства имен IPC systemControls.
  • Для задач, использующих режим IPC task, значения пространства имен IPC systemControls применяются ко всем контейнерам в рамках задачи.

Примечание

Этот параметр не поддерживается для контейнеров Windows.

Примечание

Этот параметр поддерживается только для задач, размещенных на Fargate, если задачи используют версию платформы 1.4.0 или более позднюю (Linux). Это не поддерживается для контейнеров Windows на Fargate.

namespace -> (строка)

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

value -> (строка)

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

Допустимые значения пространства имен IPC: "kernel.msgmax" | "kernel.msgmnb" | "kernel.msgmni" | "kernel.sem" | "kernel.shmall" | "kernel.shmmax" | "kernel.shmmni" | "kernel.shm_rmid_forced" и Sysctls, которые начинаются с "fs.mqueue.*".

Допустимые значения сетевых пространств имен: Sysctls, которые начинаются с "net.*". Принимаются только параметризованные пространства имен Sysctls, существующие в контейнере и начинающиеся с «net.*».

Все эти значения поддерживаются Fargate.

resourceRequirements -> (список)

Тип и количество ресурсов, которые необходимо назначить контейнеру. Поддерживается только видеокарта.

(структура)

Тип и количество ресурсов, которые необходимо назначить контейнеру. Поддерживаемые типы ресурсов — видеокарты и ускорители Elastic Inference. Дополнительную информацию см. в разделах «Работа с видеокартами в Amazon ECS» или «Работа с Amazon Elastic Inference в Amazon ECS» в Руководстве разработчика Amazon Elastic Container Service.

value -> (строка)

Значение для указанного типа ресурса.

Если тип — GPU, значение — количество физических GPUs, которые агент Amazon ECS резервирует для контейнера. Количество зарезервированных видеокарт для всех контейнеров в задаче не должно превышать количество доступных видеокарт на экземпляре контейнера, на котором запускается задача.

Если тип — InferenceAccelerator, value соответствует deviceName для ускорителя Inference, указанного в определении задачи.

type -> (строка)

Тип ресурса, который нужно назначить контейнеру.

firelensConfiguration -> (структура)

Конфигурация FireLens для контейнера. Используется для указания и настройки маршрутизатора логов для контейнерных логов. Дополнительную информацию см. в разделе «Настройка маршрутизации пользовательских логов» в Руководстве разработчика Amazon Elastic Container Service.

type -> (строка)

Используемый маршрутизатор логов. Допустимые значения — fluentd или fluentbit.

options -> (карта)

Параметры, используемые при настройке маршрутизатора логов. Это необязательное поле, которое может использоваться для указания файла пользовательской конфигурации или добавления дополнительной метаданных, таких как данные о задаче, определении задачи, кластере и экземпляре контейнера в событие лога. При указании используется синтаксис "options":{"enable-ecs-log-metadata":"true|false","config-file-type:"s3|file","config-file-value":"arn:aws:s3:::mybucket/fluent.conf|filepath"}. Дополнительную информацию см. в разделе «Создание определения задачи, использующей конфигурацию FireLens» в Руководстве разработчика Amazon Elastic Container Service.

Примечание

Задачи, размещенные на Fargate, поддерживают только тип файла конфигурации file.

key -> (строка)

value -> (строка)

credentialSpecs -> (список)

Список ARN в SSM или Amazon S3 до файла спецификации учетных данных (CredSpec), который настраивает контейнер для аутентификации Active Directory. Рекомендуется использовать этот параметр вместо dockerSecurityOptions. Максимальное количество ARN — 1.

Существуют два формата для каждого ARN.

credentialspecdomainless:MyARN

Вы используете credentialspecdomainless:MyARN для предоставления CredSpec с дополнительным разделом для секрета в Secrets Manager. Вы предоставляете учетные данные для входа в домен в секрете.

Каждая задача, выполняемая на любом экземпляре контейнера, может присоединяться к разным доменам.

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

credentialspec:MyARN

Вы используете credentialspec:MyARN для предоставления CredSpec для одного домена.

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

В обоих форматах замените MyARN на ARN в SSM или Amazon S3.

Если вы предоставляете credentialspecdomainless:MyARN, то credspec должен предоставить ARN в Secrets Manager для секрета, содержащего имя пользователя, пароль и домен для подключения. Для повышения безопасности экземпляр не присоединяется к домену для аутентификации без домена. Другие приложения на экземпляре не могут использовать учетные данные без домена. Вы можете использовать этот параметр для запуска задач на одном экземпляре, даже если задачи должны присоединяться к разным доменам. Дополнительную информацию см. в разделах «Использование gMSAs для контейнеров Windows» и «Использование gMSAs для контейнеров Linux».

(строка)

family -> (строка)

Имя семейства, к которому относится это определение задачи. Разрешено до 255 символов. Разрешены буквы (как прописные, так и строчные), цифры, дефисы (-) и символы подчеркивания (_).

Семейство группирует несколько версий определения задачи. Amazon ECS присваивает первому зарегистрированному определению задачи в семействе номер ревизии 1. Amazon ECS присваивает последовательные номера ревизии каждому определению задачи, которое вы добавляете.

taskRoleArn -> (string)

Короткое имя или полное Amazon Resource Name (ARN) роли управления доступом и идентификацией (IAM), предоставляющей контейнерам в задаче разрешение на вызов API Amazon Web Services от вашего имени. Для получения информации о требуемых ролях IAM для Amazon ECS, см. Роли IAM для Amazon ECS в руководстве Amazon Elastic Container Service Developer Guide .

executionRoleArn -> (string)

Amazon Resource Name (ARN) роли выполнения задачи, предоставляющей агенту Amazon ECS контейнера разрешение на выполнение вызовов API Amazon Web Services от вашего имени. Для получения информации о требуемых ролях IAM для Amazon ECS, см. Роли IAM для Amazon ECS в руководстве Amazon Elastic Container Service Developer Guide .

networkMode -> (string)

Режим сети Docker, который следует использовать для контейнеров в задаче. Допустимые значения — none , bridge , awsvpc и host . Если режим сети не указан, используется значение по умолчанию — bridge .

Для задач Amazon ECS на Fargate требуется режим сети awsvpc . Для задач Amazon ECS на экземплярах Amazon EC2 Linux можно использовать любой режим сети. Для задач Amazon ECS на экземплярах Amazon EC2 Windows можно использовать <default> или awsvpc . Если режим сети установлен в none , вы не можете указать сопоставления портов в своих определениях контейнеров, и контейнеры задач не имеют внешнего подключения. Режимы сети host и awsvpc обеспечивают наивысшую производительность сети для контейнеров, поскольку они используют стек сети EC2 вместо виртуализированного стека сети, предоставляемого режимом bridge .

В режимах сети host и awsvpc экспонированные порты контейнеров сопоставляются напрямую с соответствующим портом хоста (для режима host ) или портом подключенного интерфейса эластичной сети (для режима awsvpc ), поэтому вы не можете воспользоваться динамическими сопоставлениями портов хоста.

Предупреждение

При использовании режима сети host не следует запускать контейнеры с использованием пользователя root (UID 0). Рекомендуется использовать пользователя, отличного от root.

Если режим сети равен awsvpc , задаче назначается интерфейс эластичной сети, и вы должны указать значение NetworkConfiguration при создании сервиса или запуске задачи с определением задачи. Дополнительную информацию см. в разделе Сети задач в руководстве Amazon Elastic Container Service Developer Guide .

Если режим сети равен host , вы не можете запускать несколько экземпляров одной и той же задачи на одном экземпляре контейнера при использовании сопоставлений портов.

revision -> (integer)

Ревизия задачи в конкретном семействе. Ревизия — это номер версии определения задачи в семействе. При первой регистрации определения задачи ревизия равна 1 . Каждый раз, когда вы регистрируете новую ревизию определения задачи в том же семействе, значение ревизии увеличивается на единицу. Это происходит даже в том случае, если вы отменили регистрацию предыдущих ревизий в этом семействе.

volumes -> (list)

Список определений объёма данных для задачи. Дополнительную информацию см. в разделе Использование объёмов данных в задачах в руководстве разработчика Amazon Elastic Container Service.

Примечание

Параметры host и sourcePath не поддерживаются для задач, выполняемых на Fargate.

(структура)

Настройка объёма данных для задач, запускаемых с помощью этого определения задачи. Указание конфигурации объёма в определении задачи необязательно. Конфигурация объёма может содержать несколько объёмов, но только один объём, настроенный при запуске, поддерживается. Каждый объём, определённый в конфигурации объёма, может указывать только name и один из configuredAtLaunch , dockerVolumeConfiguration , efsVolumeConfiguration , fsxWindowsFileServerVolumeConfiguration или host . Если указана пустая конфигурация объёма, по умолчанию Amazon ECS использует объём хоста. Дополнительную информацию см. в разделе Использование объёмов данных в задачах.

name -> (строка)

Имя объёма. Допускается до 255 символов (заглавные и строчные буквы, цифры, символы подчёркивания и дефисы).

При использовании объёма, настроенного при запуске, требуется name, и он также должен быть указан как имя объёма в параметре ServiceVolumeConfiguration или TaskVolumeConfiguration при создании сервиса или автономной задачи.

Для всех других типов объёмов это имя используется в параметре sourceVolume объекта mountPoints в определении контейнера.

Если объём использует efsVolumeConfiguration, имя обязательно.

host -> (структура)

Этот параметр используется при использовании объёмов хоста с монтированием.

Содержимое параметра host определяет, сохраняется ли объём хоста с монтированием на экземпляре контейнера хоста и где он хранится. Если параметр host пуст, тогда демона Docker назначает путь хоста для вашего объёма данных. Однако данные не гарантированно сохранятся после остановки контейнеров, связанных с ним.

Контейнеры Windows могут монтировать целые каталоги на том же диске, что и $env:ProgramData . Контейнеры Windows не могут монтировать каталоги на разных дисках, и точка монтирования не может быть между дисками. Например, вы можете монтировать C:\my\path:C:\my\path и D:\:D:\ , но не D:\my\path:C:\my\path или D:\:C:\my\path .

sourcePath -> (строка)

Если используется параметр host , укажите sourcePath для объявления пути на экземпляре контейнера хоста, который предоставляется контейнеру. Если этот параметр пуст, тогда демона Docker назначил вам путь хоста. Если параметр host содержит расположение файла sourcePath , то объём данных сохраняется в указанном месте на экземпляре контейнера хоста до тех пор, пока вы его не удалите вручную. Если значение sourcePath не существует на экземпляре контейнера хоста, демона Docker создаёт его. Если расположение существует, содержимое папки источника экспортируется.

Если вы используете тип запуска Fargate, параметр sourcePath не поддерживается.

dockerVolumeConfiguration -> (структура)

Этот параметр используется при использовании объёмов Docker.

Контейнеры Windows поддерживают только использование драйвера local. Для использования монтирования используйте параметр host.

Примечание

Объёмы Docker не поддерживаются задачами, выполняемыми на Fargate.

scope -> (строка)

Область действия объёма Docker, которая определяет его жизненный цикл. Объёмы Docker, область действия которых ограничена task, автоматически предоставляются при запуске задачи и уничтожаются при остановке задачи. Объёмы Docker, область действия которых - shared, сохраняются после остановки задачи.

autoprovision -> (булево)

Если это значение true, объём Docker создаётся, если он ещё не существует.

Примечание

Это поле используется только если scope равно shared.

driver -> (строка)

Драйвер объёма Docker для использования. Значение драйвера должно соответствовать имени драйвера, предоставленному Docker, поскольку оно используется для размещения задач. Если драйвер был установлен с помощью CLI плагина Docker, используйте docker plugin ls для получения имени драйвера с вашего экземпляра контейнера. Если драйвер был установлен другим способом, используйте обнаружение плагинов Docker для получения имени драйвера. Этот параметр соответствует Driver в команде создания контейнера Docker и параметру xxdriver к docker volume create.

driverOpts -> (карта)

Карта параметров, специфичных для драйвера Docker, передаваемых через. Этот параметр соответствует DriverOpts в команде создания объёма docker и параметру xxopt для создания объёма docker.

key -> (строка)

value -> (строка)

labels -> (карта)

Дополнительные метаданные для добавления к вашему объёму Docker. Этот параметр соответствует Labels в команде создания контейнера Docker и параметру xxlabel для создания объёма docker.

key -> (строка)

value -> (строка)

efsVolumeConfiguration -> (структура)

Этот параметр используется, когда вы используете файловую систему Amazon Elastic File System для хранения задач.

fileSystemId -> (строка)

Идентификатор файловой системы Amazon EFS для использования.

rootDirectory -> (строка)

Каталог внутри файловой системы Amazon EFS, который нужно смонтировать как корневой каталог внутри хоста. Если этот параметр опущен, будет использован корень объёма Amazon EFS. Указание / даст такой же результат, как и опускание этого параметра.

Предупреждение

Если в authorizationConfig указан EFS доступный пункт, то параметр корневого каталога должен быть опущен или установлен в /, что заставит применить путь, заданный в EFS доступном пункте.

transitEncryption -> (строка)

Определяет, использовать ли шифрование для данных Amazon EFS при передаче между хостом Amazon ECS и сервером Amazon EFS. Транзитное шифрование должно быть включено, если используется авторизация Amazon EFS IAM. Если этот параметр опущен, используется значение по умолчанию DISABLED. Дополнительную информацию см. в разделе Шифрование данных при передаче в руководстве пользователя Amazon Elastic File System.

transitEncryptionPort -> (целое число)

Порт, используемый при отправке зашифрованных данных между хостом Amazon ECS и сервером Amazon EFS. Если вы не укажете порт транзитного шифрования, он будет использовать стратегию выбора порта, используемую помощником монтирования Amazon EFS. Дополнительную информацию см. в разделе Помощник монтирования EFS в руководстве пользователя Amazon Elastic File System.

authorizationConfig -> (структура)

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

accessPointId -> (строка)

Идентификатор точки доступа Amazon EFS для использования. Если указана точка доступа, значение корневого каталога, указанное в EFSVolumeConfiguration , должно быть опущено или установлено в / , что заставит применить путь, заданный в точке доступа EFS. Если используется точка доступа, транзитное шифрование должно быть включено в EFSVolumeConfiguration. Дополнительную информацию см. в разделе Работа с точками доступа Amazon EFS в руководстве пользователя Amazon Elastic File System.

iam -> (строка)

Определяет, использовать ли роль задачи Amazon ECS, определенную в определении задачи, при монтировании файловой системы Amazon EFS. Если оно включено, транзитное шифрование должно быть включено в EFSVolumeConfiguration. Если этот параметр опущен, используется значение по умолчанию DISABLED. Дополнительную информацию см. в разделе Использование точек доступа Amazon EFS в руководстве разработчика Amazon Elastic Container Service.

fsxWindowsFileServerVolumeConfiguration -> (структура)

Этот параметр используется, когда вы используете файловую систему Amazon FSx для Windows File Server для хранения задач.

fileSystemId -> (строка)

Идентификатор файловой системы Amazon FSx для Windows File Server для использования.

rootDirectory -> (строка)

Каталог внутри файловой системы Amazon FSx для Windows File Server, который нужно смонтировать как корневой каталог внутри хоста.

authorizationConfig -> (структура)

Подробности конфигурации авторизации для файловой системы Amazon FSx для Windows File Server.

credentialsParameter -> (строка)

Параметр авторизационных учетных данных для использования. Авторизационные учетные данные могут быть предоставлены с помощью имени ресурса Amazon (ARN) секрета Secrets Manager или параметра SSM Parameter Store. ARN ссылается на сохранённые учетные данные.

domain -> (строка)

Полное доменное имя, размещенное в службе каталогов управляемой Microsoft AD (Active Directory) или в самозапущенной AD на Amazon EC2.

configuredAtLaunch -> (булево)

Указывает, нужно ли настроить объём при запуске. Это используется для создания томов Amazon EBS для автономных задач или задач, созданных в составе сервиса. В каждой ревизии определения задачи может быть только один объём, настроенный при запуске, в конфигурации объёма.

Чтобы настроить объём при запуске, используйте эту ревизию определения задачи и укажите объект volumeConfigurations при вызове API CreateService , UpdateService , RunTask или StartTask .

status -> (строка)

Состояние определения задачи.

requiresAttributes -> (список)

Атрибуты экземпляра контейнера, необходимые для вашей задачи. Когда экземпляр Amazon EC2 зарегистрирован в вашем кластере, агент Amazon ECS контейнера назначает некоторые стандартные атрибуты экземпляру. Вы можете применить пользовательские атрибуты. Они задаются в виде пар «ключ-значение» с помощью консоли Amazon ECS или API PutAttributes. Эти атрибуты используются при определении размещения задач для задач, размещённых на экземплярах Amazon EC2. Дополнительную информацию см. в разделе «Атрибуты» в Руководстве разработчика Amazon Elastic Container Service.

Примечание

Этот параметр не поддерживается для задач, выполняемых на Fargate.

(структура)

Атрибут — это пара «имя-значение», связанная с объектом Amazon ECS. Используйте атрибуты для расширения модели данных Amazon ECS, добавляя пользовательские метаданные к вашим ресурсам. Дополнительную информацию см. в разделе «Атрибуты» в Руководстве разработчика Amazon Elastic Container Service.

name -> (строка)

Имя атрибута. name должно содержать от 1 до 128 символов. Имя может содержать буквы (строчные и прописные), цифры, дефисы (-), символы подчеркивания (_), слэши (/), обратные слэши (), или точки (.).

value -> (строка)

Значение атрибута. value должно содержать от 1 до 128 символов. Оно может содержать буквы (строчные и прописные), цифры, дефисы (-), символы подчеркивания (_), точки (.), знаки «собаки» (@), слэши (/), обратные слэши (), двоеточия (:) или пробелы. Значение не может начинаться или заканчиваться пробелом.

targetType -> (строка)

Тип целевого объекта, с которым необходимо прикрепить атрибут. Этот параметр обязателен, если вы используете сокращённый идентификатор ресурса вместо полного ARN.

targetId -> (строка)

Идентификатор целевого объекта. Вы можете указать сокращённый идентификатор ресурса или полный Amazon Resource Name (ARN).

placementConstraints -> (список)

Массив объектов ограничений размещения для использования в задачах.

Примечание

Этот параметр не поддерживается для задач, выполняемых на Fargate.

(структура)

Ограничение размещения задачи в определении задачи. Дополнительную информацию см. в разделе «Ограничения размещения задач» в Руководстве разработчика Amazon Elastic Container Service.

Примечание

Ограничения размещения задач не поддерживаются для задач, выполняемых на Fargate.

type -> (строка)

Тип ограничения. Ограничение MemberOf ограничивает выбор кандидатами из группы допустимых кандидатов.

expression -> (строка)

Выражение языка запросов кластера, применяемое к ограничению. Дополнительную информацию см. в разделе «Язык запросов кластера» в Руководстве разработчика Amazon Elastic Container Service.

compatibilities -> (список)

Amazon ECS проверяет параметры определения задачи на соответствие поддерживаемым типам запуска. Дополнительную информацию см. в разделе «Типы запуска Amazon ECS» в Руководстве разработчика Amazon Elastic Container Service.

(строка)

runtimePlatform -> (структура)

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

При указании задачи в службе это значение должно соответствовать значению runtimePlatform службы.

cpuArchitecture -> (строка)

Архитектура процессора.

Вы можете запускать свои Linux-задачи на платформе ARM, установив значение в ARM64. Этот вариант доступен для задач, выполняемых на экземплярах Linux Amazon EC2 или Linux-контейнерах на Fargate.

operatingSystemFamily -> (строка)

Операционная система.

requiresCompatibilities -> (список)

Типы запуска задач, на которые было проверено определение задачи. Допустимые значения — EC2, FARGATE и EXTERNAL. Дополнительную информацию см. в разделе «Типы запуска Amazon ECS» в Руководстве разработчика Amazon Elastic Container Service.

(строка)

cpu -> (строка)

Количество cpu единиц, используемых задачей. Если вы используете тип запуска EC2, это поле необязательно. Можно использовать любое значение. Если вы используете тип запуска Fargate, это поле обязательно. Вы должны использовать одно из следующих значений. Выбранное значение определяет диапазон допустимых значений параметра memory.

Если вы используете тип запуска EC2 или внешний тип запуска, это поле необязательно. Поддерживаемые значения находятся в диапазоне от 128 единиц процессора (0.125 виртуальных процессоров) до 196608 единиц процессора (192 виртуальных процессоров).

Это поле обязательно для Fargate. Сведения о допустимых значениях см. в разделе «Размер задачи» в Руководстве разработчика Amazon Elastic Container Service.

memory -> (строка)

Объем памяти (в МБ), используемый задачей.

Если ваши задачи выполняются на экземплярах Amazon EC2, вы должны указать либо значение памяти на уровне задачи, либо значение памяти на уровне контейнера. Это поле необязательно, и можно использовать любое значение. Если указано значение памяти на уровне задачи, значение памяти на уровне контейнера необязательно. Дополнительную информацию о памяти на уровне контейнера и резервировании памяти см. в разделе ContainerDefinition.

Если ваши задачи выполняются на Fargate, это поле обязательно. Вы должны использовать одно из следующих значений. Выбранное значение определяет диапазон допустимых значений параметра cpu.

  • 512 (0,5 ГБ), 1024 (1 ГБ), 2048 (2 ГБ) - Допустимые cpu значения: 256 (0,25 ВП)
  • 1024 (1 ГБ), 2048 (2 ГБ), 3072 (3 ГБ), 4096 (4 ГБ) - Допустимые cpu значения: 512 (0,5 ВП)
  • 2048 (2 ГБ), 3072 (3 ГБ), 4096 (4 ГБ), 5120 (5 ГБ), 6144 (6 ГБ), 7168 (7 ГБ), 8192 (8 ГБ) - Допустимые cpu значения: 1024 (1 ВП)
  • От 4096 (4 ГБ) до 16384 (16 ГБ) с шагом 1024 (1 ГБ) - Допустимые cpu значения: 2048 (2 ВП)
  • От 8192 (8 ГБ) до 30720 (30 ГБ) с шагом 1024 (1 ГБ) - Допустимые cpu значения: 4096 (4 ВП)
  • От 16 ГБ до 60 ГБ с шагом 4 ГБ - Допустимые cpu значения: 8192 (8 ВП) Этот вариант требует платформы Linux 1.4.0 или более поздней.
  • От 32 ГБ до 120 ГБ с шагом 8 ГБ - Допустимые cpu значения: 16384 (16 ВП) Этот вариант требует платформы Linux 1.4.0 или более поздней.

inferenceAccelerators -> (список)

Ускоритель Elastic Inference, связанный с задачей.

(структура)

Подробные сведения об ускорителе Elastic Inference. Дополнительную информацию см. в разделе «Работа с Amazon Elastic Inference в Amazon ECS» в Руководстве разработчика Amazon Elastic Container Service.

deviceName -> (строка)

Имя устройства ускорителя Elastic Inference. deviceName также должен быть указан в определении контейнера как ResourceRequirement.

deviceType -> (строка)

Тип ускорителя Elastic Inference для использования.

pidMode -> (строка)

Пространство имен процессов для контейнеров в задаче. Допустимые значения — host или task. На Fargate для Linux-контейнеров единственно допустимое значение — task. Например, вспомогательные компоненты мониторинга могут потребовать pidMode для доступа к информации об других контейнерах, выполняемых в той же задаче.

Если указано host, все контейнеры в задачах, которые указали режим PID host на том же экземпляре контейнера, используют то же пространство имен процессов, что и хост-экземпляр Amazon EC2.

Если указано task, все контейнеры в указанной задаче используют одно и то же пространство имен процессов.

Если значение не указано, по умолчанию используется личное пространство имен для каждого контейнера.

При использовании режима PID host существует повышенный риск нежелательного доступа к пространству имен процессов.

Примечание

Этот параметр не поддерживается для Windows-контейнеров.

Примечание

Этот параметр поддерживается только для задач, выполняемых на Fargate, если задачи используют версию платформы 1.4.0 или более позднюю (Linux). Он не поддерживается для Windows-контейнеров на Fargate.

ipcMode -> (строка)

Пространство имен IPC для контейнеров в задаче. Допустимые значения — host, task или none. Если указано host, все контейнеры в задачах, которые указали режим IPC host на том же экземпляре контейнера, используют те же ресурсы IPC, что и хост-экземпляр Amazon EC2. Если указано task, все контейнеры в указанной задаче используют те же ресурсы IPC. Если указано none, ресурсы IPC внутри контейнеров задачи являются частными и не разделяются с другими контейнерами в задаче или на экземпляре контейнера. Если значение не указано, то совместное использование пространства имен ресурсов IPC зависит от настройки демона Docker на экземпляре контейнера.

При использовании режима IPC host имейте в виду повышенный риск нежелательного доступа к пространству имен IPC.

Если вы настраиваете параметры ядра с помощью systemControls для контейнеров в задаче, это повлияет на пространство имен ресурсов IPC. Дополнительную информацию см. в разделе «Система управления» в Руководстве разработчика Amazon Elastic Container Service.

  • Для задач, использующих режим IPC host, не поддерживаются связанные с пространством имен IPC systemControls.
  • Для задач, использующих режим IPC task, связанные с пространством имен IPC systemControls будут применяться ко всем контейнерам в задаче.

Примечание

Этот параметр не поддерживается для Windows-контейнеров или задач, выполняемых на Fargate.

proxyConfiguration -> (структура)

Подробные сведения о конфигурации прокси App Mesh.

Для использования конфигурации прокси ваши экземпляры Amazon ECS контейнеров требуют как минимум версии 1.26.0 контейнерного агента и как минимум версии 1.26.0-1 пакета ecs-init. Если ваши контейнерные экземпляры запущены из оптимизированной Amazon ECS AMI версии 20190301 или более поздней, они содержат необходимые версии контейнерного агента и ecs-init. Дополнительную информацию см. в разделе Amazon ECS-оптимизированная Linux AMI в руководстве разработчика Amazon Elastic Container Service.

type -> (строка)

Тип прокси. Поддерживается только значение APPMESH.

containerName -> (строка)

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

properties -> (список)

Набор параметров конфигурации сети для предоставления плагину Container Network Interface (CNI), указанные в виде пар «ключ-значение».

  • IgnoredUID - (Обязательно) Идентификатор пользователя (UID) контейнера прокси, определенный параметром user в определении контейнера. Это используется для обеспечения того, чтобы прокси игнорировал свой собственный трафик. Если указано IgnoredGID, это поле может быть пустым.
  • IgnoredGID - (Обязательно) Идентификатор группы (GID) контейнера прокси, определенный параметром user в определении контейнера. Это используется для обеспечения того, чтобы прокси игнорировал свой собственный трафик. Если указано IgnoredUID, это поле может быть пустым.
  • AppPorts - (Обязательно) Список портов, используемых приложением. Сеть трафика на эти порты перенаправляется на ProxyIngressPort и ProxyEgressPort.
  • ProxyIngressPort - (Обязательно) Указывает порт, на который направляется входящий трафик на AppPorts.
  • ProxyEgressPort - (Обязательно) Указывает порт, на который направляется исходящий трафик из AppPorts.
  • EgressIgnoredPorts - (Обязательно) Исходящий трафик на указанные порты игнорируется и не перенаправляется на ProxyEgressPort. Может быть пустым списком.
  • EgressIgnoredIPs - (Обязательно) Исходящий трафик на указанные IP-адреса игнорируется и не перенаправляется на ProxyEgressPort. Может быть пустым списком.

(структура)

Объект пары «ключ-значение».

name -> (строка)

Имя пары «ключ-значение». Для переменных окружения это имя переменной окружения.

value -> (строка)

Значение пары «ключ-значение». Для переменных окружения это значение переменной окружения.

registeredAt -> (метка времени)

Маркер Unix для времени регистрации определения задачи.

deregisteredAt -> (метка времени)

Маркер Unix для времени дерегистрации определения задачи.

registeredBy -> (строка)

Субъект, зарегистрировавший определение задачи.

ephemeralStorage -> (структура)

Настройки временного хранилища для задач, выполняемых с определением задачи.

sizeInGiB -> (целое число)

Общий объем временного хранилища в ГБ для задания. Минимально поддерживаемое значение — 21 ГБ, максимально поддерживаемое — 200 ГБ.

enableFaultInjection -> (булево)

Включает впрыск ошибок и позволяет принимать запросы впрыска ошибок из контейнеров задачи. Значение по умолчанию — false.

tags -> (список)

Метаданные, применяемые к определению задачи для категоризации и организации. Каждый тег состоит из ключа и необязательного значения. Оба определяются вами.

Применяются следующие основные ограничения к тегам:

  • Максимальное количество тегов на ресурс — 50
  • Для каждого ресурса каждый ключ тега должен быть уникальным, и каждый ключ тега может иметь только одно значение.
  • Максимальная длина ключа — 128 символов Юникода в UTF-8
  • Максимальная длина значения — 256 символов Юникода в UTF-8
  • Если ваша схема тегов используется в нескольких службах и ресурсах, помните, что другие службы могут иметь ограничения на разрешенные символы. В общем, разрешены буквы, цифры и пробелы, представимые в UTF-8, а также следующие символы: + - = . _ : / @.
  • Ключи и значения тегов чувствительны к регистру.
  • Не используйте aws:, AWS: или любые сочетания верхнего или нижнего регистра, такие как префикс для ключей или значений, так как они зарезервированы для использования Amazon Web Services. Вы не можете редактировать или удалять ключи или значения тегов с этим префиксом. Теги с этим префиксом не учитываются при подсчете тегов на ресурс.

(структура)

Метаданные, которые вы применяете к ресурсу, чтобы помочь в категоризации и организации. Каждый тег состоит из ключа и необязательного значения. Оба определяются вами.

Применяются следующие основные ограничения к тегам:

  • Максимальное количество тегов на ресурс — 50
  • Для каждого ресурса каждый ключ тега должен быть уникальным, и каждый ключ тега может иметь только одно значение.
  • Максимальная длина ключа — 128 символов Юникода в UTF-8
  • Максимальная длина значения — 256 символов Юникода в UTF-8
  • Если ваша схема тегов используется в нескольких службах и ресурсах, помните, что другие службы могут иметь ограничения на разрешенные символы. В общем, разрешены буквы, цифры и пробелы, представимые в UTF-8, а также следующие символы: + - = . _ : / @.
  • Ключи и значения тегов чувствительны к регистру.
  • Не используйте aws:, AWS: или любые сочетания верхнего или нижнего регистра, такие как префикс для ключей или значений, так как они зарезервированы для использования Amazon Web Services. Вы не можете редактировать или удалять ключи или значения тегов с этим префиксом. Теги с этим префиксом не учитываются при подсчете тегов на ресурс.

key -> (строка)

Одна часть пары «ключ-значение», которая составляет тег. Ключ — это общий ярлык, который действует как категория для более специфических значений тегов.

value -> (строка)

Необязательная часть пары «ключ-значение», которая составляет тег. Значение действует как описание в категории тега (ключ).

© Copyright 2025, Amazon Web Services. Created using Sphinx.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API