【问题标题】:How to access ACR images from calico.yaml如何从 calico.yaml 访问 ACR 图像
【发布时间】:2022-01-11 11:12:36
【问题描述】:

我有一个 k3s 集群,其 calico pod calico-node-xxxcalico-kube-controllers-xxx 在 kube-system 命名空间中运行。我在我的项目中使用calico.yaml 配置。

现在,我希望从我的 ACR 存储库而不是 docker.io 存储库中提取 calico.yaml 中的这些图像。因此,我在我的 ACR 存储库中标记并推送了这些图像,并更改了 calico 清单 yaml 文件中的图像路径(例如 myacrrepo.io/calico/node:v3.17.1 ),以便 pod 可以从 ACR 存储库中提取图像。

但是我应该在 calico 清单文件中的哪里提到 ACR 存储库的凭据,因为没有凭据(用户名/密码/主机名),pod 将失败并出现错误 x509: certificate signed by unknown authority

有人可以告诉我,我应该在calico.yaml 的哪个位置添加 ACR 回购凭证(以及在 calico.yaml 中提供凭证的语法是什么,因为对于 docker.io 图像,calico.yaml 中没有提到凭证,我可以替换为我的 ACR 回购凭证)?

【问题讨论】:

    标签: kubernetes k3s project-calico calico


    【解决方案1】:

    如果您想使用私有容器注册表,那么您必须创建一个 imagePullSecret。 Microsoft 解释了 here 如何为 ACR 执行此操作。

    创建 imagePullSecret 后,将其添加到 pod spec,如文档的“使用图像拉取密钥”部分所述。

    docker.io 不需要这个 imagePullSecret,因为 docker.io 是一个公共注册中心,而 imagePullSecrets 只有私有注册中心才需要。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-23
      • 2018-09-05
      • 2019-05-25
      • 2020-09-07
      • 2021-11-22
      • 2020-08-14
      相关资源
      最近更新 更多