一、简介
1. 前言
- 早在2016年3月,Docker 1.11 的 Docker Engine 里就包含了 containerd,而现在则是把 containerd 从 Docker Engine 里彻底剥离出来,作为一个独立的开源项目发展,目标是提供一个更加开放、稳定的容器运行基础设施。和原先包含在 Docker Engine 里 containerd 相比,独立的 containerd 将具有更多的功能,可以涵盖整个容器运行时管理的所有需求。
- containerd 并不直接面向用户,而是主要用于集成到更上层的系统里,比如 Swarm, Kubernetes , Mesos 等容器编排系统。
- containerd 以 Daemon 的形式运行在系统上,通过暴露底层的 gRPC API,上层系统可以通过这些API管理对应的容器。
- 每个 containerd 只负责一台机器,Pull 镜像,对容器的启动、停止等操作,网络,存储都是由 containerd 完成。具体运行容器由 runC 负责,实际上只要是符合OCI规范的容器都可以支持。
- 对于容器编排服务来说,运行时只需要使用 containerd + runC,更加轻量,容易管理。
- 独立之后 containerd 的特性演进可以和 Docker Engine 分开,更加专注于专注容器运行时管理。
2. 架构
简要版
二、安装
以 Ubuntu 20.04 LTS 为例
1. 安装依赖
sudo apt update
sudo apt install -y ca-certificates curl gnupg lsb-release
2. 添加 Docker 官方 GPG 密钥
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
3. 添加仓库
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
4. 安装
sudo apt update
sudo apt install -y containerd.io
# 查看版本
containerd -V
评论 (0)