kubernetes_25_基于containerd方式的k8s部署从本地私有仓库拉取镜像

概述

之前在部署 V1.19.8 的k8s集群时,使用的是docker,现在使用 containerd方式 部署k8s后,并没有docker环境(无法通过docker login命令从本地私服认证),使用 crictl 工具也没有 crictl login 这样的命令,如果直接使用 crictl pull会报错,如下:

[root@k8s-172 ~]# crictl pull nexus3.kevin.com:8870/openjdk:15.0.2-slim-base
FATA[0000] pulling image: rpc error: code = Unknown desc = failed to pull and unpack image "nexus3.kevin.com:8870/openjdk:15.0.2-slim-base": failed to resolve reference "nexus3.kevin.com:8870/openjdk:15.0.2-slim-base": failed to do request: Head https://nexus3.kevin.com:8870/v2/openjdk/manifests/15.0.2-slim-base: http: server gave HTTP response to HTTPS client 
[root@k8s-173 ~]#

配置

只需要在每台节点修改 vim /etc/containerd/config.toml 这个配置文件即可

[plugins]
  [plugins."io.containerd.grpc.v1.cri"]
    [plugins."io.containerd.grpc.v1.cri".cni]
      bin_dir = "/opt/cni/bin"
      conf_dir = "/etc/cni/net.d"
      max_conf_num = 1
      conf_template = ""
    [plugins."io.containerd.grpc.v1.cri".registry]
      [plugins."io.containerd.grpc.v1.cri".registry.mirrors]
        [plugins."io.containerd.grpc.v1.cri".registry.mirrors."docker.io"]
          endpoint = ["https://registry.cn-hangzhou.aliyuncs.com"]
##################添加部分开始###################
        [plugins."io.containerd.grpc.v1.cri".registry.mirrors."nexus3.kevin.com:8870"]
          endpoint = ["http://nexus3.kevin.com:8870"]
      [plugins."io.containerd.grpc.v1.cri".registry.configs]
        [plugins."io.containerd.grpc.v1.cri".registry.configs."nexus3.kevin.com:8870".tls]
          insecure_skip_verify = true
        [plugins."io.containerd.grpc.v1.cri".registry.configs."nexus3.kevin.com:8870".auth]
          username = "admin"
          password = "admin"
###################添加部分结束##################

重启服务

[root@k8s-172 ~]# systemctl restart containerd.service

测试

[root@k8s-172 ~]# crictl pull nexus3.kevin.com:8870/openjdk:15.0.2-slim-base
Image is up to date for sha256:c7e2b8dc892be191db6cb692224a898bc40c7bd84821ef11230ef616be1d6a73
## 查看镜像列表,openjdk已pull成功
[root@k8s-172 ~]# crictl images
IMAGE                                                            TAG                 IMAGE ID            SIZE
docker.io/kubernetesui/dashboard                                 v2.0.5              fd110d63b15bd       67.7MB
docker.io/kubernetesui/metrics-scraper                           v1.0.6              48d79e554db69       15.1MB
docker.io/library/nginx                                          latest              62d49f9bab67f       53.7MB
docker.io/library/traefik                                        v2.3.6              b52fea93906ad       28.4MB
nexus3.kevin.com:8870/openjdk                                    15.0.2-slim-base    c7e2b8dc892be       227MB
quay.io/coreos/flannel                                           v0.12.0-amd64       4e9f801d2217e       17.1MB
registry.aliyuncs.com/google_containers/pause                    3.2                 80d28bedfe5de       300kB
registry.cn-hangzhou.aliyuncs.com/google_containers/coredns      1.7.0               bfe3a36ebd252       14MB
registry.cn-hangzhou.aliyuncs.com/google_containers/kube-proxy   v1.20.5             5384b16505072       49.5MB
registry.cn-hangzhou.aliyuncs.com/google_containers/kube-proxy   v1.20.6             9a1ebfd8124d7       49.5MB
[root@k8s-172 ~]#

注意: crictl 并没有 push 到个人仓库的命令,所以,如果你想要构建镜像发布到私服,docker/podman还是需要的。

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hellowordx007

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值