put-image
Описание
Создаёт или обновляет манифест изображения и метки, связанные с изображением.
Когда изображение отправлено, и все новые слои изображения загружены, API PutImage вызывается один раз, чтобы создать или обновить манифест изображения и метки, связанные с изображением.
Примечание
Данная операция используется прокси-сервером Amazon ECR и обычно не используется клиентами для извлечения и отправки изображений. В большинстве случаев следует использоватьdocker командную строку для извлечения, добавления меток и отправки изображений.См. также: Документация API AWS
Синтаксис
put-image
[--registry-id <value>]
--repository-name <value>
--image-manifest <value>
[--image-manifest-media-type <value>]
[--image-tag <value>]
[--image-digest <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]
Параметры
--registry-id (строка)
--repository-name (строка)
--image-manifest (строка)
--image-manifest-media-type (строка)
mediaType, вы должны указать imageManifestMediaType в запросе.--image-tag (строка)
--image-digest (строка)
--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-auto-prompt (логическое значение)
Автоматически запросить параметры ввода CLI.
--no-cli-auto-prompt (логическое значение)
Отключить автоматическое запросы параметров ввода CLI.
Примеры
Примечание
Чтобы использовать следующие примеры, необходимо установить и настроить AWS CLI. Подробнее см. руководство по началу работы в Руководстве пользователя AWS CLI.
Если не указано иное, все примеры используют правила цитирования, похожие на Unix. Эти примеры необходимо адаптировать к правилам цитирования вашей оболочки. См. Использование кавычек со строками в Руководстве пользователя AWS CLI.
Для переименования изображения с его манифестом
Следующий put-image пример создаёт новую метку в репозитории hello-world с существующим манифестом изображения.
aws ecr put-image \
--repository-name hello-world \
--image-tag 2019.08 \
--image-manifest file://hello-world.manifest.json
Содержание hello-world.manifest.json:
{
"schemaVersion": 2,
"mediaType": "application/vnd.docker.distribution.manifest.v2+json",
"config": {
"mediaType": "application/vnd.docker.container.image.v1+json",
"size": 5695,
"digest": "sha256:cea5fe7701b7db3dd1c372f3cea6f43cdda444fcc488f530829145e426d8b980"
},
"layers": [
{
"mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
"size": 39096921,
"digest": "sha256:d8868e50ac4c7104d2200d42f432b661b2da8c1e417ccfae217e6a1e04bb9295"
},
{
"mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
"size": 57938,
"digest": "sha256:83251ac64627fc331584f6c498b3aba5badc01574e2c70b2499af3af16630eed"
},
{
"mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
"size": 423,
"digest": "sha256:589bba2f1b36ae56f0152c246e2541c5aa604b058febfcf2be32e9a304fec610"
},
{
"mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
"size": 680,
"digest": "sha256:d62ecaceda3964b735cdd2af613d6bb136a52c1da0838b2ff4b4dab4212bcb1c"
},
{
"mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
"size": 162,
"digest": "sha256:6d93b41cfc6bf0d2522b7cf61588de4cd045065b36c52bd3aec2ba0622b2b22b"
},
{
"mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
"size": 28268840,
"digest": "sha256:6986b4d4c07932c680b3587f2eac8b0e013568c003cc23b04044628a5c5e599f"
},
{
"mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
"size": 35369152,
"digest": "sha256:8c5ec60f10102dc8da0649d866c7c2f706e459d0bdc25c83ad2de86f4996c276"
},
{
"mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
"size": 155,
"digest": "sha256:cde50b1c594539c5f67cbede9aef95c9ae321ccfb857f7b251b45b84198adc85"
},
{
"mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
"size": 28737,
"digest": "sha256:2e102807ab72a73fc9abf53e8c50e421bdc337a0a8afcb242176edeec65977e4"
},
{
"mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
"size": 190,
"digest": "sha256:fc379bbd5ed37808772bef016553a297356c59b8f134659e6ee4ecb563c2f5a7"
},
{
"mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
"size": 28748,
"digest": "sha256:021db240dfccf5a1aff19507d17c0177e5888e518acf295b52204b1825e8b7ee"
}
]
}
Вывод:
{
"image": {
"registryId": "130757420319",
"repositoryName": "hello-world",
"imageId": {
"imageDigest": "sha256:8ece96b74f87652876199d83bd107d0435a196133af383ac54cb82b6cc5283ae",
"imageTag": "2019.08"
},
"imageManifest": "{\n\"schemaVersion\": 2,\n\"mediaType\": \"application/vnd.docker.distribution.manifest.v2+json\",\n\"config\": {\n\"mediaType\": \"application/vnd.docker.container.image.v1+json\",\n\"size\": 5695,\n\"digest\": \"sha256:cea5fe7701b7db3dd1c372f3cea6f43cdda444fcc488f530829145e426d8b980\"\n },\n\"layers\": [\n {\n\"mediaType\": \"application/vnd.docker.image.rootfs.diff.tar.gzip\",\n\"size\": 39096921,\n\"digest\": \"sha256:d8868e50ac4c7104d2200d42f432b661b2da8c1e417ccfae217e6a1e04bb9295\"\n },\n {\n\"mediaType\": \"application/vnd.docker.image.rootfs.diff.tar.gzip\",\n\"size\": 57938,\n\"digest\": \"sha256:83251ac64627fc331584f6c498b3aba5badc01574e2c70b2499af3af16630eed\"\n },\n {\n\"mediaType\": \"application/vnd.docker.image.rootfs.diff.tar.gzip\",\n\"size\": 423,\n\"digest\": \"sha256:589bba2f1b36ae56f0152c246e2541c5aa604b058febfcf2be32e9a304fec610\"\n },\n {\n\"mediaType\": \"application/vnd.docker.image.rootfs.diff.tar.gzip\",\n\"size\": 680,\n\"digest\": \"sha256:d62ecaceda3964b735cdd2af613d6bb136a52c1da0838b2ff4b4dab4212bcb1c\"\n },\n {\n\"mediaType\": \"application/vnd.docker.image.rootfs.diff.tar.gzip\",\n\"size\": 162,\n\"digest\": \"sha256:6d93b41cfc6bf0d2522b7cf61588de4cd045065b36c52bd3aec2ba0622b2b22b\"\n },\n {\n\"mediaType\": \"application/vnd.docker.image.rootfs.diff.tar.gzip\",\n\"size\": 28268840,\n\"digest\": \"sha256:6986b4d4c07932c680b3587f2eac8b0e013568c003cc23b04044628a5c5e599f\"\n },\n {\n\"mediaType\": \"application/vnd.docker.image.rootfs.diff.tar.gzip\",\n\"size\": 35369152,\n\"digest\": \"sha256:8c5ec60f10102dc8da0649d866c7c2f706e459d0bdc25c83ad2de86f4996c276\"\n },\n {\n\"mediaType\": \"application/vnd.docker.image.rootfs.diff.tar.gzip\",\n\"size\": 155,\n\"digest\": \"sha256:cde50b1c594539c5f67cbede9aef95c9ae321ccfb857f7b251b45b84198adc85\"\n },\n {\n\"mediaType\": \"application/vnd.docker.image.rootfs.diff.tar.gzip\",\n\"size\": 28737,\n\"digest\": \"sha256:2e102807ab72a73fc9abf53e8c50e421bdc337a0a8afcb242176edeec65977e4\"\n },\n {\n\"mediaType\": \"application/vnd.docker.image.rootfs.diff.tar.gzip\",\n\"size\": 190,\n\"digest\": \"sha256:fc379bbd5ed37808772bef016553a297356c59b8f134659e6ee4ecb563c2f5a7\"\n },\n {\n\"mediaType\": \"application/vnd.docker.image.rootfs.diff.tar.gzip\",\n\"size\": 28748,\n\"digest\": \"sha256:021db240dfccf5a1aff19507d17c0177e5888e518acf295b52204b1825e8b7ee\"\n }\n ]\n}\n"
}
}
Вывод
image -> (структура)
Подробная информация о загруженном изображении.
registryId -> (строка)
repositoryName -> (строка)
imageId -> (структура)
Объект, содержащий метку изображения и хэш изображения, связанные с изображением.
imageDigest -> (строка)
sha256 хеш манифеста изображения.imageTag -> (строка)
imageManifest -> (строка)
imageManifestMediaType -> (строка)
© Copyright 2025, Amazon Web Services. Created using Sphinx.