本地部署了一个K8S集群,但是worker1和worker2的docker无法拉取外面的镜像,docker的daemon.json也配置了,无法下载,于是在master部署了一个docker registry。
但是pod还是无法拉取registry的镜像并报错。
我这里使用的是containerd作为K8S集群拉取镜像的服务,所以在/etc/containerd/config.toml中找到下面两块,按照我这样配置,将ip和端口改为自己的镜像仓库,原帖之中这里使用的是harbor,所以猜测在这里部署上harbor也是好使的。
[plugins."io.containerd.grpc.v1.cri".registry.configs][plugins."io.containerd.grpc.v1.cri".registry.configs."192.168.157.128:5000".tls]insecure_skip_verify = true
[plugins."io.containerd.grpc.v1.cri".registry.mirrors][plugins."io.containerd.grpc.v1.cri".registry.mirrors."192.168.157.128:5000"]endpoint = ["http://192.168.157.128:5000"][plugins."io.containerd.grpc.v1.cri".registry.mirrors."docker.io"]endpoint = ["你自己的阿里云或者其他的镜像加速器/"]
重启containerd服务
systemctl restart containerd,这样就可以让K8S中的node拉取私库里的镜像了。