containerd配置镜像加速器
Containerd配置镜像加速器
为什么要给containerd配置镜像加速器?
因为k8s1.24以后的容器运行时是containerd,也就是说k8s会直接使用containerd去拉取镜像,并且启动容器,而不再是使用docker去拉取镜像,所以我们需要配置containerd的镜像加速器
containerd的旧版本配置镜像加速器是直接在config.toml文件中添加,而这种做法已经被废弃了
1. 旧版本配置方法
按照官方的说法在containerd1.5版本前,这种方式是可以的,如何配置呢?
1.1 生成containerd配置文件
如果配置文件已经存在则不要执行下面这条命令
containerd config default > /etc/containerd/config.toml
1.2 修改配置文件
vim /etc/containerd/config.toml # 需要找到这一行,并添加2行 [plugins."io.containerd.grpc.v1.cri".registry.mirrors] [plugins."io.containerd.grpc.v1.cri".registry.mirrors."docker.io"] endpoint = ["https://hub.rat.dev","镜像加速器地址2"]
写完之后重启containerd就可以了
2. 新版本配置方法
如果你的containerd的版本是1.5以上的,那么采用这种配置方式
2.1 创建目录
mkdir /etc/containerd/certs.d
将精选加速器的地址放在这个目录下
2.2 配置加速器
# 我们是给docker来配置镜像加速的,所以我们再创建一个docker.io的目录 mkdir /etc/containerd/certs.d/docker.io
然后我们创建一个hosts.toml
文件并配置加速器地址
vim /etc/containerd/certs.d/docker.io/hosts.toml [host."镜像加速器地址"] capabilities = ["pull","resolve"]
这样配置好之后我们重启containerd
3. 测试拉取镜像
如果是使用ctr命令的话,则还需要指定hosts路径
ctr images pull docker.io/library/httpd:latest --hosts-dir=/etc/containerd/certs.d
不出意外的话就可以拉取到镜像了。
本文来自博客园,作者:FuShudi,转载请注明原文链接:https://www.cnblogs.com/fsdstudy/p/18355827
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了