Реестр облачных контейнеров Google — проверка размера изображения

#google-cloud-storage #google-cloud-build #google-cloud-registry

#google-облачное хранилище #google-cloud-build #google-cloud-registry

Вопрос:

Я отправил файл docker для сборки Google Cloud. Сборка была создана успешно.

URL-адрес артефакта:

gcr.io/XXX/api/v1:abcdef017e651ee2b713828662801b36fc2c1

Как я могу проверить размер изображения? (МБ ГБ)

Ответ №1:

Для этого нет API. Но у меня есть обходной путь, это командная строка Linux

 curl -H "Authorization: Bearer $(gcloud auth print-access-token)" 
  https://gcr.io/v2/XXX/api/v1/manifests/abcdef017e651ee2b713828662801b36fc2c1 2>/dev/null | 
  jq ".layers[].size" | 
  awk '{s =$1} END {print s}'
  

Подробно построчно

  1. Создайте curl с помощью защищенного токена из командной строки GCLOUD
  2. Получите манифест изображения, в котором описаны все слои и их размер
  3. Получить только размеры слоев
  4. Суммируйте размеры

-> Результат в байтах.

Комментарии:

1. У меня не работает. Я заменил URL-адрес изображения ( https://gcr.io/... ) на свой эквивалент и увидел, что ваше значение отличается от моего первоначального значения. Откуда берется v2 раздел?

2. v2 — это версия манифеста. Здесь вы просто используете DOCKER API , это не специфичные для Google API