【问题标题】:Why am I getting this error: ERROR [internal] load metadata为什么我会收到此错误:错误 [内部] 加载元数据
【发布时间】:2021-12-09 11:18:33
【问题描述】:

我是一个 Docker 菜鸟,正在尝试运行在 skaffold.yml 文件中声明的 make dev-services 脚本(我用 xxx 交换了图像和 sha 名称):

- 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

当我运行它时,我得到了这个错误:

Building [gcr.io/xxx/media]...
[+] Building 2.8s (4/4) FINISHED                                                                                                                                                                            
 => [internal] load build definition from Dockerfile                                                                                                                                                   0.0s
 => => transferring dockerfile: 37B                                                                                                                                                                    0.0s
 => [internal] load .dockerignore                                                                                                                                                                      0.0s
 => => transferring context: 2B                                                                                                                                                                        0.0s
 => [internal] load metadata for docker.io/library/alpine:3.14                                                                                                                                         1.2s
 => ERROR [internal] load metadata for gcr.io/xxx/service-base:xxx                                                     2.6s
------
 > [internal] load metadata for gcr.io/xxx/service-base:xxx:
------
failed to solve with frontend dockerfile.v0: failed to create LLB definition: unexpected status code [manifests xxx]: 401 Unauthorized
Building [gcr.io/xxx/api]...
Canceled build for gcr.io/xxx/api
exit status 1. Docker build ran into internal error. Please retry.
If this keeps happening, please open an issue..
make: *** [dev-services] Error 1

有人知道这里可能是什么问题吗? 可能是谷歌容器注册表? 我正在使用 Minikube。是否有可以尝试的 Minikube - 或 Docker - 注册表?如果是这样,我需要在 skaffold.yaml 文件中进行哪些更改?

提前非常感谢:)

【问题讨论】:

  • 请不要包含图片以显示错误。它们读起来很痛苦。使用文本形式的相关信息编辑您的问题。
  • @kometen 对不起!我把图片改成文字了!

标签: docker skaffold


【解决方案1】:

错误:

failed to solve with frontend dockerfile.v0: failed to create LLB definition: unexpected status code [manifests xxx]: 401 Unauthorized

表示 Docker 无法获得您的 GCR 存储库之一的授权。 Docker 通常会从您的 gcloud 设置中获取此信息。这可能会失败有几个原因:

  • 您尚未配置 Docker 以访问 GCR。请参阅 GCR 文档以获取 how to configure access
  • 您的帐户无权访问 GCR。 请参阅 configuring access control 上的 GCR 文档。
  • 您的登录详细信息已过期或被撤销。使用gcloud auth login 重新登录。
  • 您有多个帐户,但您使用了错误的帐户。 请尝试gcloud auth list 查看您当前的帐户。您可以使用gcloud config set account xxx 设置活动帐户,或设置环境CLOUDSDK_CORE_ACCOUNT 设置会话期间的帐户。

【讨论】:

    猜你喜欢
    • 2018-01-22
    • 2018-06-22
    • 2016-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-24
    相关资源
    最近更新 更多