「 ~ 」- jnan806's blog
jnan806

containerd 安装


下载yum源

推荐: 中科大 docker-ce yum 源

curl https://mirrors.ustc.edu.cn/docker-ce/linux/centos/docker-ce.repo >> /etc/yum.repo.d/docker-ce.repo

docker-ce.repo中的download.docker.com替换成mirrors.ustc.edu.cn/docker-ce

安装 containerd

yum install -y containerd.io docker-compose-plugin

创建配置文件

mkdir -p /etc/containerd/
containerd config default > /etc/containerd/config.toml

/etc/containerd/config.toml

1. sandbox 修改为 国内 k8s.gcr.io 源
2.
[plugins."io.containerd.grpc.v1.cri".registry]
config_path = "/etc/containerd/certs.d"


mkdir -p /etc/containerd/certs.d

vim /etc/containerd/certs.d/docker.io/hosts.toml
[host."https://********.mirror.aliyuncs.com"]
capabilities = ["pull", "resolve"]
skip_verify = true
[host."https://registry.docker-cn.com"]
capabilities = ["pull", "resolve"]
skip_verify = true

vim /etc/containerd/certs.d/gcr.io/hosts.toml
[host."https://registry.aliyuncs.com"]
capabilities = ["pull", "resolve"]
skip_verify = true
[host."https://gcr.mirrors.ustc.edu.cn"]
capabilities = ["pull", "resolve"]
skip_verify = true

vim /etc/containerd/certs.d/quay.io/hosts.toml
[host."https://quay.mirrors.ustc.edu.cn"]
capabilities = ["pull", "resolve"]
skip_verify = true

4. SystemdCgroup = true

docker.io :Docker Hub 官方镜像仓库,也是 Docker 默认的仓库
gcr.io、k8s.gcr.io :谷歌镜像仓库, k8s.gcr.io 等价于 gcr.io/google_containers,endpoint仅支持 schema://IP:PORT,因此 k8s.gcr.io 不需配置
quay.io :Red Hat 镜像仓库
ghcr.io :GitHub 镜像仓库

ctr doesn't use CRI, so it doesn't read plugins."io.containerd.grpc.v1.cri"
nerdctl, crictl 是使用contained的配置文件下载,你在配置文件里设置的mirror,是生效的。
如果你使用ctr去pull镜像,都是直接下载,无法设置mirror,也不会使用contained下的mirror设置

启动

systemctl enable containerd
systemctl daemon-reload
systemctl start containerd

安装 nerdctl
github上containerd/nerdctl下载full版本的nerdctl

1 解压,后配置环境变量
2 创建软连接,使 /opt/cni/bin 指向 nerdctl/libexec/cni
3 设置自动补全

# 编辑文件
vim /etc/profile
source <(nerdctl completion bash)
# 让其生效
source /etc/profile

本文作者:jnan806
本文链接:http://jnan806.panpan.cloud/2021/11/25/cncf/docker/containerd/
版权声明:本文采用 CC BY-NC-SA 3.0 CN 协议进行许可

×