跳到主要内容

Debian 安装 Containerd

· 阅读需 3 分钟

Containerd 官方网址:containerd – An industry-standard container runtime with an emphasis on simplicity, robustness and portability

官方安装教程:containerd/docs/getting-started.md (github.com)

安装环境

Debian 11.5.0 版本

下载 Containerd 发行包

下载地址:https://github.com/containerd/containerd/releases

由于 containerd 需要调用 runc,所以我们也需要先安装 runc。不过 containerd 提供了一个包含相关依赖的压缩包 cri-containerd-cni,直接用它可以省去逐个安装的麻烦。

执行命令下载:

wget https://github.com/containerd/containerd/releases/download/v1.6.8/cri-containerd-cni-1.6.8-linux-amd64.tar.gz

如果国内下载速度过慢,可以尝试此地址(国内代理站点):

wget https://download.fastgit.org/containerd/containerd/releases/download/v1.6.8/cri-containerd-cni-1.6.8-linux-amd64.tar.gz

解压压缩包到根目录

压缩包中已经按系统层级组织好了目录文件,直接解压到 / 根目录即可:

tar -C / -xzf cri-containerd-cni-1.6.8-linux-amd64.tar.gz

设置环境变量

/usr/local/bin/usr/local/sbin 追加到 ~/.bashrc 文件的 PATH 环境变量中:

vim ~/.bashrc

添加以下内容:

# 让 shell 能找到 containerd 相关的可执行文件
export PATH=$PATH:/usr/local/bin:/usr/local/sbin

添加后执行命令使其生效:

source ~/.bashrc

生成 containerd 默认配置文件

配置文件可以放到 etc 文件夹下:

mkdir -p /etc/containerd
# 将默认配置导出为 config.toml
containerd config default > /etc/containerd/config.toml

配置国内镜像加速器地址

生成默认配置文件之后,我们手动配置国内镜像加速器地址:

vim /etc/containerd/config.toml

找到以下这行 [plugins."io.containerd.grpc.v1.cri".registry.mirrors]

大约 153 行处:

添加以下内容并注意缩进:

# docker.io 与 k8s.gcr.io 分别指向对应的国内镜像源
[plugins."io.containerd.grpc.v1.cri".registry.mirrors."docker.io"]
endpoint = ["https://kvuwuws2.mirror.aliyuncs.com"]
[plugins."io.containerd.grpc.v1.cri".registry.mirrors."k8s.gcr.io"]
endpoint = ["https://registry.aliyuncs.com/k8sxio"]

配置之后保存文件。

配置中 root 是存放容器信息的位置,可自行进行更改:

启动 containerd 服务并设置开机自启

# --now 表示在设置开机自启的同时立即启动服务
systemctl enable containerd --now

验证一下服务是否启动成功:

至此 containerd 服务已经成功安装并启动。

小结

在 Debian 上安装 containerd,整个流程其实就是四步:下载官方的 cri-containerd-cni 发行包、解压到根目录、配置 PATH 与默认配置文件、用 systemd 启动服务。这个压缩包里已经带了 runc 和 CNI 插件,省去了分别安装依赖的麻烦。国内环境建议顺手配置镜像加速器,拉取镜像的体验会好很多。后续如果要对接 Kubernetes,这套安装方式也可以直接复用。

评论 / COMMENTS