文章目录
- 一、Containerd简介
- 1、什么是Containerd?
- 2、Containerd和Docker的区别是什么?
- 二、使用yum仓库安装Containerd
- 三、使用源码安装Containerd
- 四、配置国内镜像加速地址
一、Containerd简介
1、什么是Containerd?
containerd是一个开源的容器运行时,是Docker引擎的一部分,也是CNCF的一个项目,Containerd提供了标准的容器运行时接口,当然也可以对容器进行管理,常常用来集成Kubernetes、Docker Compose等编排工具。
2、Containerd和Docker的区别是什么?
Docker和containerd都是容器技术实现的,有以下区别:
- Docker是一个完整的容器平台,包括容器引擎、镜像仓库、网络、存储等组件,而Containerd是一个轻量级的容器运行时,只提供容器生命周期管理和基本的镜像操作。
- Docker的API和CLI更加丰富,可以方便的进行容器创建,停止、启动、删除等操作,而containerd的API和CLI相对比较简单。
- Docker的安全和稳定性更高,而Containerd则更加轻量级。
总之,Docker和Containerd使用的场景不通,Containerd一般集成编排工具使用,很少拿出来单独使用。
二、使用yum仓库安装Containerd
1、添加yum源
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
yum install -y yum-utils
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
2、安装containerd
yum -y install containerd.io-1.6.6
3、生成containerd配置文件
mkdir -p /etc/containerd
containerd config default > /etc/containerd/config.toml
4、修改配置文件,修改以下两项配置即可。
vim /etc/containerd/config.toml
SystemdCgroup = true
sandbox_image = "registry.aliyuncs.com/google_containers/pause:3.7"
- SystemdCgroup:使用SystemdCgroup驱动
- sandbox_image:配置国内的沙箱镜像地址
沙箱镜像是一个特殊的镜像,其中包含了容器运行时所需的文件和工具,以及用于隔离容器的命名空间和cgroups等资源控制机制。当容器运行时需要创建新的沙箱时,会使用该配置项指定的镜像作为基础镜像来创建沙箱。
5、启动 && 设置自启动
systemctl enable containerd --now
三、使用源码安装Containerd
1、下载cri-containerd
官网下载:
wget -c https://github.com/containerd/containerd/releases/download/v1.6.6/cri-containerd-1.6.6-linux-amd64.tar.gz
国内下载:
wget https://gitee.com/qinziteng/K8S/raw/master/Package/cri-containerd-1.6.6-linux-amd64.tar.gz
2、拷贝containerd命令 && systemd管理文件
tar zxf cri-containerd-1.6.6-linux-amd64.tar.gz -C /usr/local/src/
cp /usr/local/src/usr/local/bin/* /usr/bin/
cp /usr/local/src/usr/local/bin/* /usr/local/bin/
cp /usr/local/src/etc/systemd/system/containerd.service /usr/lib/systemd/system/
3、生成containerd配置文件
mkdir -p /etc/containerd
containerd config default > /etc/containerd/config.toml
4、修改配置文件,修改以下两项配置即可。
vim /etc/containerd/config.toml
SystemdCgroup = true
sandbox_image = "registry.aliyuncs.com/google_containers/pause:3.7"
4、启动containerd
systemctl start containerd
5、安装runC,如果没有runC命令无法创建容器
wget https://github.com/opencontainers/runc/releases/download/v1.1.7/runc.amd64
mv runc.amd64 /usr/bin/runc
chmod +x /usr/bin/runc
四、配置国内镜像加速地址
1、配置加速地址
mkdir /etc/containerd/certs.d/docker.io/ -p
vim /etc/containerd/certs.d/docker.io/hosts.toml
[host."http://hub-mirror.c.163.com",host."https://registry.docker-cn.com"]
capabilities = ["pull"]
2、指定加速目录
vim /etc/containerd/config.toml
config_path = "/etc/containerd/certs.d"
3、重启containerd
systemctl restart containerd
4、下载镜像试试效果
ctr images pull docker.io/library/nginx:1.18.0
至此结束!本篇文章介绍了什么是containerd和安装,containerd如何使用请关注后续文章~