微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Skaffold 和 Gitlab 图像存储库

如何解决Skaffold 和 Gitlab 图像存储库

这是我的 Skaffold 配置。

apiVersion: skaffold/v2beta19
kind: Config
Metadata:
  name: my-api
build:
  local:
    useDockerCLI: true
  artifacts:
    - image: registry.gitlab.com/lodiee/my-api
      docker:
        buildArgs:
          DATABASE_HOST: '{{.DATABASE_HOST}}'
deploy:
  helm:
    releases:
      - name: my-api
        artifactOverrides:
          image: registry.gitlab.com/lodiee/my-api
        imageStrategy:
          helm: {}
        remoteChart: bitnami/node
        setValueTemplates:
          image.tag: '{{.DIGEST_HEX}}'
        setValues:
          image.repository: registry.gitlab.com/lodiee/my-api

当我运行 Skaffold dev 时,一切正常,直到我在 pod 日志中看到 ImagePullBackoff 错误。这是日志的部分输出

Events:
  Type     Reason     Age                From               Message
  ----     ------     ----               ----               -------
  normal   Scheduled  102s               default-scheduler  Successfully assigned default/my-api-node-55cf68d989-7vltw to kind-control-plane
  normal   BackOff    21s (x5 over 99s)  kubelet            Back-off pulling image "docker.io/registry.gitlab.com/lodiee/my-api:60ef7d4a463e269de9e176afbdd2362fd50870e494ff7a8abf25ece16c0d100c"
  Warning  Failed     21s (x5 over 99s)  kubelet            Error: ImagePullBackOff
  normal   Pulling    6s (x4 over 101s)  kubelet            Pulling image "docker.io/registry.gitlab.com/lodiee/my-api:60ef7d4a463e269de9e176afbdd2362fd50870e494ff7a8abf25ece16c0d100c"
  Warning  Failed     4s (x4 over 100s)  kubelet            Failed to pull image "docker.io/registry.gitlab.com/lodiee/my-api:60ef7d4a463e269de9e176afbdd2362fd50870e494ff7a8abf25ece16c0d100c": rpc error: code = UnkNown desc = Failed to pull and unpack image "docker.io/registry.gitlab.com/lodiee/my-api:60ef7d4a463e269de9e176afbdd2362fd50870e494ff7a8abf25ece16c0d100c": Failed to resolve reference "docker.io/registry.gitlab.com/lodiee/my-api:60ef7d4a463e269de9e176afbdd2362fd50870e494ff7a8abf25ece16c0d100c": pull access denied,repository does not exist or may require authorization: server message: insufficient_scope: authorization Failed

输出中可以看出,kubernetes 在我的镜像仓库地址前面添加了 docker.io 前缀,因此在该地址找不到镜像。

这是正常行为吗?此外,这是一个本地开发设置,我使用 skaffold dev 启动它,为什么 k8s 尝试转到该地址?

谢谢。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。