Главная » Error » Error internal load metadata for

Error internal load metadata for

Error internal load metadata for

В Windows 10 Docker Desktop (Docker Engine v20.10.17, WSL включен и работает правильно) не удается docker buildсоздать образ (который, кстати, работает правильно в Debian 11), выдавая следующую ошибку:

docker build -t <image-name> .

[+] Building 2.3s (3/3) FINISHED

 => [internal] load build definition from Dockerfile 0.1s

 => => transferring dockerfile: 32B 0.0s

 => [internal] load .dockerignore 0.1s

 => => transferring context: 2 0.0s

 => ERROR [internal] load metadata for docker.io/rocker/r-base:4.2.1 2.0s

—— > [internal] load metadata for docker.io/rocker/r-base:4.2.1: ——

failed to solve with frontend dockerfile.v0: failed to create LLB definition: failed to authorize:

rpc error: code = Unknown desc = failed to fetch anonymous token: Get

“https://auth.docker.io/token?scope=repository%3Arocker%2Fr-base%3Apull&service=registry.docker.io”:

dial tcp: lookup auth.docker.io: no such host

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

В конце концов я нашел (или) решение на форуме Docker: в Docker Desktop перейдите в Настройки> Docker Engine, измените buildkitfalseв файле конфигурации Docker daemon, а затем нажмите “Применить и перезапустить”.

{

  “builder”: {

  “gc”: {

  “defaultKeepStorage”: “20GB”,

  “enabled”: true

  }

  },

  “experimental”: false,

  “features”: {

  “buildkit”: false

  }

}

Почему я получаю эту ошибку: Error internal load metadata for

Вопрос:

Я новичок в Docker и пытаюсь запустить скрипт make dev-services, объявленный в skaffold.файл yml (я обменял имена изображений и sha на xxx):

 – name: dev-services

  build:

  tagPolicy:

  inputDigest: {}

  local:

  push: false

  useBuildkit: true

  artifacts:

  – image: gcr.io/xxx/service-base

  context: .

  – image: gcr.io/xxx/api

  context: server/api/

  requires:

  – image: gcr.io/xxx/service-base

  alias: service_base

  – image: gcr.io/xxx/media

  context: server/media/app

  requires:

  – image: gcr.io/xxx/service-base

  alias: service_base

  deploy:

  kustomize:

  paths:

  – ./k8s/local

  – ./server/api/k8s/development

  – ./server/media/k8s/development

 

Кто-нибудь знает, в чем может быть проблема?

Может ли это быть реестр контейнеров Google?

Я использую Minikube. Есть ли реестр Minikube или Docker, который можно попробовать? Если да, то что мне нужно изменить в skaffold.файл yaml?

Ответ

Это указывает, что Docker не удалось получить авторизацию для одного из ваших репозиториев GCR. Docker обычно получает эту информацию из ваших gcloud настроек. Есть несколько причин, по которым это может привести к сбою:

  • Вы не настроили Docker для доступа к GCR. Смотрите Документацию GCR о том, как настроить доступ.
  • У вашей учетной записи нет разрешения на доступ к GCR. Смотрите Документацию GCR по настройке контроля доступа.
  • Срок действия ваших учетных данных истек или они были отозваны. Используйте gcloud auth login для повторного входа в систему.
  • У вас несколько учетных записей, и вы используете неправильную учетную запись. попробуйте gcloud auth list просмотреть свои текущие учетные записи. Вы можете использовать gcloud config set account xxx для установки активной учетной записи или настроить среду CLOUDSDK_CORE_ACCOUNT для установки учетной записи на время сеанса.
1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
Загрузка...

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector