contained 安装及使用

containerd 是一个行业标准的容器运行时,强调简单性、健壮性和可移植性。它可作为 Linux 和 Windows 的守护进程使用,可以管理其主机系统的完整容器生命周期:图像传输和存储、容器执行和监督、低级存储和网络附件等。containerd is a member of CNCF with graduated status.
- 早在 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,更加轻量,容易管理。 5.独立之后containerd的特性演进可以和Docker Engine分开,专注容器运行时管理,可以更稳定。
安装
centos
1yum install -y containerd.io
ubuntu
1apt install -y containerd.io
设置开机自启
1systemctl enable containerd
2systemctl start containerd
3systemctl status containerd
验证
1ctr version
ctr 命令
| 命令 | 作用 |
|---|---|
| plugins, plugin | 提供有关容器插件的信息 |
| version | 打印客户端和服务器版本 |
| containers, c, container | 管理容器 |
| content | 管理内容 |
| events, event | 显示容器事件 |
| images, image, i | 管理图像 |
| leases | 管理租约 |
| namespaces, namespace, ns | 管理租命名空间 |
| pprof | 为 containerd 提供 golang pprof 输出 |
| run | 运行一个容器 |
| snapshots, snapshot | 管理快照 |
| tasks, t, task | 管理任务 |
| install | 安装一个新包 |
| oci | OCI 工具 |
| shim | 直接与 shim 交互 |
| help, h | 显示命令列表或一个命令的帮助 |







