【问题标题】:Private repository passing through kubernetes yaml file私有仓库通过 kubernetes yaml 文件
【发布时间】:2018-04-29 23:06:20
【问题描述】:

我们已尝试设置 hivemq 清单文件。我们的私有仓库中有 hivemq docker 镜像

Step1:我已经像

一样登录了私有仓库
 docker login "private repo name"

成功了

之后,我尝试为如下所示创建清单文件

apiVersion: extensions/v1beta1 种类:部署 元数据: 名称:hivemq 规格: 复制品:1 模板: 元数据: 标签: 名称:hivemq1 规格: 容器: - 环境: xxxxx 我通过的一些环境值 名称:hivemq 图片:privatereponame:端口号/目录名/hivemq: 端口: - 容器端口:1883

它已成功创建,但我遇到了以下问题。您能否帮助任何人解决此问题。

hivemq-4236597916-mkxr4 0/1 ImagePullBackOff 0 1h

日志:

来自服务器的错误(BadRequest):pod“hivemq16-1341290525-qtkhb”中的容器“hivemq16”正在等待启动:InvalidImageName

有时我会遇到这种问题

来自服务器的错误(BadRequest):pod“hivemq-4236597916-mkxr4”中的容器“hivemq”正在等待启动:尝试提取图像但失败

【问题讨论】:

    标签: kubernetes


    【解决方案1】:

    要在 Kubernetes 中使用私有 docker 注册表,docker login 是不够的。
    您需要使用您的凭据添加 Kubernetes docker-registry Secret,如下所述:https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/。在那篇文章中还有 imagePullSecrets 设置,您必须添加到您的 yaml 部署文件中,引用该秘密。

    【讨论】:

    • 感谢您的回复。即使我也遵循了上述程序。
    • kubernetes.io/docs/tasks/configure-pod-container/…,点击此链接。直到 "base64 -d secret64" 一切都是正确的。我也得到了我的凭据详细信息。之后,我尝试使用链接中提到的相同 yaml 文件提取图像。
    • containers: - name: private-reg-container image: imagePullSecrets: - name: myregistrykey 在镜像的地方我试过很多方法 :protname/directoryname/hivemq: hivemq: 目录名/hivemq: 端口名/目录名/hivemq:
    • 尽管我遇到了问题,但我已经尝试了很多方法
    【解决方案2】:

    我刚刚在我的机器上修复了这个问题,kubectl v1.9.0 未能正确创建密钥。升级到 v1.9.1,删除秘密,重新创建它为我解决了这个问题。 https://github.com/kubernetes/kubernetes/issues/57427

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-11-01
      • 2016-06-14
      • 1970-01-01
      • 2020-04-27
      • 2021-05-01
      • 2017-07-14
      • 2022-08-20
      • 2020-09-23
      相关资源
      最近更新 更多