关于使用kubeoperator搭建k8s集群使用containerd作为容器运行时,从自己搭建的habor仓库拉取镜像的有关说明

1.kubepi界面添加habor仓库信息,并授权给k8s集群

这一步的操作是当在工作负载选择从harbor仓库拉取镜像时会自动创建有关的secrets信息,从而不用事先手动创建了(有别于kuboard界面操作)

2.只是做好上一步并不能从harbor镜像库拉取镜像,会报错:

x509: certificate signed by unknown authority

原因是harbor配置的自签名的https,需要设置有关证书方面的信息

3.关于containerd设置从harbor拉取镜像,有两种方式

3.1 参考docker方式,创建/etc/containerd/certs.d/registy.myharbor.com目录,在该目录下放置harbor的自签名证书

使用crictl命令拉取镜像进行验证,无法使用,仍会报同样的错误

注意:使用nerdctl命令拉取镜像就可以拉取下来

3.2 直接忽略证书验证

直接编辑containerd配置文件,参考原有写法,增加如下配置:

如下是老版的写法:

    [plugins.cri.registry]
      [plugins.cri.registry.mirrors]
        [plugins.cri.registry.mirrors."registy.myharbor.com"]
          endpoint = ["https://registy.myharbor.com"]
      [plugins.cri.registry.configs]
        [plugins.cri.registry.configs."registy.myharbor.com".tls]
          insecure_skip_verify = true

把cri修改成"io.containerd.grpc.v1.cri"

新版写法:

    [plugins."io.containerd.grpc.v1.cri".registry]
      [plugins."io.containerd.grpc.v1.cri".mirrors]
        [plugins."io.containerd.grpc.v1.cri".mirrors."registy.myharbor.com"]
          endpoint = ["https://registy.myharbor.com"]
      [plugins."io.containerd.grpc.v1.cri".configs]
        [plugins."io.containerd.grpc.v1.cri"."registy.myharbor.com".tls]
          insecure_skip_verify = true

但是,这种方法用nerdctl命令无法拉取镜像

posted @   哈喽哈喽111111  阅读(1157)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
历史上的今天:
2020-07-01 基于Alpine镜像定制自己的工具箱
点击右上角即可分享
微信分享提示