Kubernetes BuildConfig 错误:拉取镜像失败

时间:2021-04-18 21:41:27

标签: docker kubernetes

我正在尝试创建一个 BuildConfig 来自动构建一个 docker 镜像并将其存储到 GitLab docker 注册表中。

buildconfig.yaml

kind: "BuildConfig"
apiVersion: "v1"
metadata:
  name: "tracker-build" 
spec:
  runPolicy: "Serial" 
  triggers: 
    -
      type: "GitLab"
      gitlab:
        secretReference:
           name: "webhooksecret"
  source: 
    git:
      uri: "https://gitlab.com/USERNAME/rayan_tracker_paas.git"
    sourceSecret:
      name: gitsecret
  strategy: 
    dockerStrategy:
      forcePull: true 
  output:
    to:
      kind: "DockerImage"
      name: "registry.gitlab.com/UESRNAME/rayan_tracker_paas:latest"
    pushSecret:
      name: "gitlab-reg"      
  resources:
    limits:
      cpu: 1500m
      ephemeral-storage: 1G
      memory: 600M
    requests:
      cpu: 1500m
      ephemeral-storage: 1G
      memory: 600M

启动后,出现此错误:

<块引用>

拉取图片节点:12 ... 错误:构建错误:无法拉取图像:tomanyrequests:您已达到拉取速率限制。您可以通过身份验证和升级来增加限制:https://www.docker.com/increase-rate-limit

<块引用>

匿名使用每六小时 100 个容器映像请求的速率限制,以及免费 Docker 帐户每六小时 200 个容器映像请求的速率限制现已生效。超过这些限制的图片请求将被拒绝,直到 6 小时窗口结束。

由于我的应用程序需要 nodejs,它试图从 docker hub 拉取 node 官方镜像并出现此问题。为了解决这个问题,我需要在 buildconfig.yaml 文件中的某处使用 docker secret,我无法通过在谷歌搜索找到。

1 个答案:

答案 0 :(得分:2)

终于找到了解决办法。我向 pullSecret 块添加了 strategy.dockerStrategy 属性。

strategy:
  dockerStrategy:
    forcePull: true 
    pullSecret:
      name:
        docker-hub