[ aws . imagebuilder ]
create-image-recipe
Описание
Создаёт новую рецептуру образа. Рецептуры образов определяют, как настраиваются, тестируются и оцениваются образы.
См. также: Документацию API AWS
Синтаксис
create-image-recipe
--name <value>
[--description <value>]
--semantic-version <value>
--components <value>
--parent-image <value>
[--block-device-mappings <value>]
[--tags <value>]
[--working-directory <value>]
[--additional-instance-configuration <value>]
[--client-token <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
[--debug]
[--endpoint-url <value>]
[--no-verify-ssl]
[--no-paginate]
[--output <value>]
[--query <value>]
[--profile <value>]
[--region <value>]
[--version <value>]
[--color <value>]
[--no-sign-request]
[--ca-bundle <value>]
[--cli-read-timeout <value>]
[--cli-connect-timeout <value>]
[--cli-binary-format <value>]
[--no-cli-pager]
[--cli-auto-prompt]
[--no-cli-auto-prompt]
Параметры
--name (строка)
--description (строка)
--semantic-version (строка)
Семантическая версия рецептуры образа. Эта версия следует синтаксису семантической версии.
Примечание
Семантическая версия имеет четыре узла: <major>.<minor>.<patch>/<build>. Вы можете назначить значения для первых трёх и можете фильтровать по всем из них.
Назначение: Для первых трёх узлов вы можете назначить любое положительное целое значение, включая ноль, с верхним пределом 2^30-1, или 1073741823 для каждого узла. Image Builder автоматически назначает номер сборки четвёртому узлу.
Шаблоны: Вы можете использовать любой числовой шаблон, который соответствует требованиям назначения для узлов, которые вы можете назначить. Например, вы можете выбрать шаблон версии программного обеспечения, такой как 1.0.0, или дату, такую как 2021.01.01.
--components (список)
Компоненты, включённые в рецептуру образа.
(структура)
Сведения о настройке компонента.
componentArn -> (строка)
parameters -> (список)
Группа настроек параметров, которые Image Builder использует для настройки компонента для определённой рецептуры.
(структура)
Содержит пару ключ/значение, которая устанавливает заданный параметр компонента.
name -> (строка)
value -> (список)
Устанавливает значение для заданного параметра компонента.
(строка)
Синтаксис JSON:
[
{
"componentArn": "string",
"parameters": [
{
"name": "string",
"value": ["string", ...]
}
...
]
}
...
]
--parent-image (строка)
Базовый образ для настроек, указанных в рецептуре образа. Вы можете указать родительский образ, используя один из следующих вариантов:
- ID AMI
- Amazon Resource Name (ARN) образа Image Builder
- Параметр хранилища параметров Amazon Web Services Systems Manager (SSM), префикс которого
ssm:, за которым следует имя параметра или ARN. - ID продукта Amazon Web Services Marketplace
Если вы введёте ID AMI или параметр SSM, который содержит ID AMI, у вас должен быть доступ к AMI, и AMI должен находиться в целевом регионе.
--block-device-mappings (список)
Сопоставления блочных устройств для рецептуры образа.
(структура)
Определяет сопоставления блочных устройств для экземпляра, используемого для настройки вашего образа.
deviceName -> (строка)
ebs -> (структура)
Используется для управления настройками, специфичными для Amazon EBS, для этого сопоставления.
encrypted -> (булево)
deleteOnTermination -> (булево)
iops -> (целое число)
kmsKeyId -> (строка)
snapshotId -> (строка)
volumeSize -> (целое число)
volumeType -> (строка)
throughput -> (целое число)
virtualName -> (строка)
noDevice -> (строка)
Сокращённый синтаксис:
deviceName=string,ebs={encrypted=boolean,deleteOnTermination=boolean,iops=integer,kmsKeyId=string,snapshotId=string,volumeSize=integer,volumeType=string,throughput=integer},virtualName=string,noDevice=string ...
Синтаксис JSON:
[
{
"deviceName": "string",
"ebs": {
"encrypted": true|false,
"deleteOnTermination": true|false,
"iops": integer,
"kmsKeyId": "string",
"snapshotId": "string",
"volumeSize": integer,
"volumeType": "standard"|"io1"|"io2"|"gp2"|"gp3"|"sc1"|"st1",
"throughput": integer
},
"virtualName": "string",
"noDevice": "string"
}
...
]
--tags (словарь)
Теги рецептуры образа.
key -> (строка)
value -> (строка)
Сокращённый синтаксис:
KeyName1=string,KeyName2=string
Синтаксис JSON:
{"string": "string"
...}
--working-directory (строка)
--additional-instance-configuration (структура)
Укажите дополнительные настройки и сценарии запуска для ваших экземпляров сборки.
systemsManagerAgent -> (структура)
Содержит настройки агента Systems Manager на вашем экземпляре сборки.
uninstallAfterBuild -> (булево)
userDataOverride -> (строка)
Используйте этот параметр для предоставления команд или скрипта команд для запуска при запуске вашего экземпляра сборки.
Параметр userDataOverride заменяет любые команды, которые Image Builder мог добавить, чтобы убедиться, что Systems Manager установлен на вашем экземпляре сборки Linux. Если вы переопределяете пользовательские данные, убедитесь, что вы добавляете команды для установки Systems Manager, если он не предварительно установлен в вашем базовом образе.
Примечание
Пользовательские данные всегда кодируются в base 64. Например, следующие команды закодированы как IyEvYmluL2Jhc2gKbWtkaXIgLXAgL3Zhci9iYi8KdG91Y2ggL3Zhci$ :
mkdir -p /var/bb/
touch /var
Сокращённый синтаксис:
systemsManagerAgent={uninstallAfterBuild=boolean},userDataOverride=string
Синтаксис JSON:
{
"systemsManagerAgent": {
"uninstallAfterBuild": true|false
},
"userDataOverride": "string"
}
--client-token (строка)
--cli-input-json | --cli-input-yaml (строка) Считывает аргументы из предоставленной строки JSON. Строка JSON следует формату, предоставляемому --generate-cli-skeleton. Если на командной строке указаны другие аргументы, эти значения переопределят значения, предоставленные JSON. Невозможно передавать произвольные двоичные значения с помощью значения, предоставленного JSON, так как строка будет взята дословно. Это не может быть указано вместе с --cli-input-yaml.
--generate-cli-skeleton (строка) Выводит каркас JSON в стандартный вывод без отправки запроса API. Если указано без значения или со значением input, выводит пример входного JSON, который можно использовать как аргумент для --cli-input-json. Аналогично, если указано yaml-input, он выведет образец входного YAML, который можно использовать с --cli-input-yaml. Если указано значение output, он валидирует входные данные команд и возвращает пример выходного JSON для этой команды. Сгенерированный каркас JSON не является стабильным между версиями AWS CLI, и нет гарантий обратной совместимости в сгенерированном каркасе JSON.
Глобальные параметры
--debug (булево)
Включить отладку.
--endpoint-url (строка)
Переопределить URL по умолчанию команды указанным URL.
--no-verify-ssl (булево)
По умолчанию AWS CLI использует SSL при взаимодействии с AWS-сервисами. Для каждого SSL-соединения AWS CLI будет проверять сертификаты SSL. Этот параметр переопределяет стандартное поведение проверки сертификатов SSL.
--no-paginate (булево)
Отключить автоматическую постраничность. Если автоматическая постраничность отключена, AWS CLI сделает только один вызов для первой страницы результатов.
--output (строка)
Стиль форматирования для вывода команд.
- json
- text
- таблица
- yaml
- yaml-поток
--query (строка)
Запрос JMESPath для использования при фильтрации данных ответа.
--profile (строка)
Использовать определённый профиль из вашего файла с данными.
--region (строка)
Использовать указанный регион. Переопределяет настройки конфигурации/среды.
--version (строка)
Отобразить версию данного инструмента.
--color (строка)
Включить/выключить цветной вывод.
- включить
- выключить
- авто
--no-sign-request (булево)
Не подписывать запросы. Данные учетных данных не будут загружаться, если этот аргумент предоставлен.
--ca-bundle (строка)
Файл сертификатов CA для использования при проверке SSL-сертификатов. Переопределяет настройки конфигурации/среды.
--cli-read-timeout (целое число)
Максимальное время чтения сокета в секундах. Если значение равно 0, чтение сокета будет выполняться блокирующим образом и не будет иметь таймаута. Значение по умолчанию составляет 60 секунд.
--cli-connect-timeout (целое число)
Максимальное время подключения сокета в секундах. Если значение равно 0, подключение сокета будет выполняться блокирующим образом и не будет иметь таймаута. Значение по умолчанию составляет 60 секунд.
--cli-binary-format (строка)
Стиль форматирования, который будет использоваться для двоичных блоков. Формат по умолчанию – base64. Формат base64 ожидает, что двоичные блоки будут предоставлены в виде закодированной в base64 строки. Формат raw-in-base64-out сохраняет совместимость с поведением AWS CLI V1, и двоичные значения должны передаваться дословно. При предоставлении содержимого из файла, которое соответствует двоичному блоку, fileb:// всегда будет обрабатываться как двоичное и будет использоваться непосредственно содержимое файла независимо от настройки cli-binary-format. При использовании file:// содержимое файла потребуется правильно отформатировать для заданной настройки cli-binary-format.
- base64
- raw-in-base64-out
--no-cli-pager (булево)
Отключить вывод CLI-страницы.
--cli-auto-prompt (булево)
Автоматически запрашивать параметры ввода CLI.
--no-cli-auto-prompt (булево)
Отключить автоматический запрос параметров ввода CLI.
Примеры
Примечание
Чтобы использовать следующие примеры, необходимо установить и настроить AWS CLI. Дополнительную информацию см. в руководстве по началу работы в руководстве пользователя AWS CLI.
Если не указано иное, все примеры используют правила цитирования, аналогичные Unix. Эти примеры необходимо адаптировать к правилам цитирования вашей терминальной оболочки. Дополнительную информацию см. в разделе Использование кавычек со строками в руководстве пользователя AWS CLI.
Чтобы создать рецепт
Следующий create-image-recipe пример создает рецепт изображения с помощью файла JSON. Компоненты устанавливаются в том порядке, в котором они указаны.
aws imagebuilder create-image-recipe \
--cli-input-json file://create-image-recipe.json
Содержание create-image-recipe.json:
{
"name": "MyBasicRecipe",
"description": "This example image recipe creates a Windows 2016 image.",
"semanticVersion": "2019.12.03",
"components":
[
{
"componentArn": "arn:aws:imagebuilder:us-west-2:123456789012:component/myexamplecomponent/2019.12.02/1"
},
{
"componentArn": "arn:aws:imagebuilder:us-west-2:123456789012:component/myimportedcomponent/1.0.0/1"
}
],
"parentImage": "arn:aws:imagebuilder:us-west-2:aws:image/windows-server-2016-english-full-base-x86/xxxx.x.x"
}
Вывод:
{
"requestId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
"clientToken": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222",
"imageRecipeArn": "arn:aws:imagebuilder:us-west-2:123456789012:image-recipe/mybasicrecipe/2019.12.03"
}
Дополнительную информацию см. в разделе Настройка и управление конвейером изображений EC2 Image Builder с помощью AWS CLI в руководстве пользователя EC2 Image Builder.
Вывод
requestId -> (строка)
clientToken -> (строка)
imageRecipeArn -> (строка)
© Copyright 2025, Amazon Web Services. Created using Sphinx.