当前位置: 首页 > backend >正文

Ubuntu 安装 containerd

什么是 containerd

containerd 是一个高性能、专注于容器生命周期管理的容器运行时(Container Runtime),是 Kubernetes 默认使用的容器运行时。

containerd 是 Docker 的子项目演化而来。
containerd 最初是 Docker 内部的一部分,用来负责容器的生命周期管理。
后来(2017年),Docker 公司(当时是 Docker Inc.)把 containerd 独立出来开源,交给 CNCF(Cloud Native Computing Foundation)管理,成为一个中立的社区项目。
所以,Docker 使用 containerd 作为它的底层运行核心,而 containerd 自己也可以单独运行,不依赖 Docker。

安装 containerd

1. 安装 

sudo apt update
sudo apt install -y containerd

设置开机自启动

sudo systemctl enable containerd

2. 配置 containerd 默认配置文件

先备份原来的默认配置文件

sudo cp /etc/containerd/config.toml /etc/containerd/config.toml.bak
sudo containerd config default | sudo tee /etc/containerd/config.toml > /dev/null

3. 开启 cgroup 驱动(可选,如果你使用 Kubernetes 需要设置与其一致)

编辑 /etc/containerd/config.toml 文件,将 SystemdCgroup 设置为 true

sudo vim /etc/containerd/config.toml
SystemdCgroup = true

保存后,重启 containerd

sudo systemctl restart containerd

4. 配置镜像源加速器

添加如下文件:

mkdir -p  /etc/containerd/certs.d/docker.io/
sudo vim /etc/containerd/certs.d/docker.io/hosts.toml

文件内容如下:

[host."https://dockerproxy.com"]capabilities = ["pull", "resolve"][host."https://docker.m.daocloud.io"]capabilities = ["pull", "resolve"][host."https://reg-mirror.qiniu.com"]capabilities = ["pull", "resolve"][host."https://registry.docker-cn.com"]capabilities = ["pull", "resolve"][host."http://hub-mirror.c.163.com"]capabilities = ["pull", "resolve"][host."https://docker.hpcloud.cloud"]capabilities = ["pull", "resolve"][host."https://docker.unsee.tech"]capabilities = ["pull", "resolve"][host."https://docker.1panel.live"]capabilities = ["pull", "resolve"][host."http://mirrors.ustc.edu.cn"]capabilities = ["pull", "resolve"][host."https://docker.chenby.cn"]capabilities = ["pull", "resolve"][host."http://mirror.azure.cn"]capabilities = ["pull", "resolve"][host."https://dockerpull.org"]capabilities = ["pull", "resolve"][host."https://dockerhub.icu"]capabilities = ["pull", "resolve"][host."https://hub.rat.dev"]capabilities = ["pull", "resolve"]

containerd 状态相关命令

查看 containerd 版本:containerd --version

启动服务:sudo systemctl start containerd

停止服务:sudo systemctl stop containerd

重启服务:sudo systemctl restart containerd

查看状态:sudo systemctl status containerd

设置开机自启:sudo systemctl enable containerd

禁用开机自启:sudo systemctl disable containerd

重新加载配置:sudo systemctl daemon-reload


安装 nerdctl

nerdctl 是一个命令行工具(CLI),用来管理 containerd 容器运行时,它的设计目标是尽可能兼容 Docker 的命令用法,让你可以用和 Docker 几乎一样的方式来管理容器,但底层不再依赖 dockerd,而是直接使用 containerd。

1. 安装 nerdctl

下载地址:https://github.com/containerd/nerdctl/tags

把下载的文件上传到 Ubuntu 的 /usr/local/nerdctl 目录中并解压

把 nerdctl 放在系统命令目录中

sudo mv /usr/local/nerdctl/nerdctl /usr/local/bin/
sudo chmod +x /usr/local/bin/nerdctl

2. 使用 nerdctl

测试拉取镜像

nerdctl pull nginx

拉取镜像中

nerdctl 是在 containerd 中使用 Docker 的工具

Docker 命令nerdctl 命令说明
docker runnerdctl run支持
docker pullnerdctl pull支持
docker pushnerdctl push支持
docker psnerdctl ps支持
docker imagesnerdctl images支持
docker execnerdctl exec支持
docker logsnerdctl logs支持
docker stop / startnerdctl stop / start支持
docker rm / rminerdctl rm / rmi支持
docker build✅(需 nerdctl+buildkit)需要 buildkit 支持
docker network⚠️ 部分支持仅支持 CNI 类型的网络
docker volume⚠️ 部分支持有限制
docker-compose⚠️ 需要额外工具可通过 nerdctl compose 使用,但格式和特性有限
http://www.xdnf.cn/news/4171.html

相关文章:

  • 【东枫科技】代理英伟达产品:交换机系统
  • 如何修改 JAR 包中的源码
  • 地级市-机器人、人工智能等未来产业水平(2009-2023年)-社科数据
  • mapbox基础,加载Fog云雾效果
  • 【C语言干货】野指针
  • 系统级编程(二):通过读取PE文件获取EXE或者DLL的依赖
  • Spring Cloud Stream集成RocketMQ(kafka/rabbitMQ通用)
  • 2025年OpenAI重大架构调整:资本与使命的再平衡
  • 在Star-CCM+中实现UDF并引用场数据和网格数据
  • 配置Jupyter Notebook环境及Token认证(Linux服务器)
  • Elasticsearch知识汇总之ElasticSearch监控方案
  • 关于 js:1. 基础语法与核心概念
  • Java实现堆排序算法
  • 代理式AI(Agentic AI):2025年企业AI转型的催化剂
  • 2、实验室测控系统 - /自动化与控制组件/lab-monitoring-system
  • 一文速览可证数学定理的DeepSeek-Prover系列模型:从Prover V1、Prover V1.5到DeepSeek-Prover V2
  • AI教你学VUE——Gemini版
  • 【Python】常用命令提示符
  • 【心海资源】0U攻击工具|一键模仿地址生成+余额归集+靓号生成系统
  • Waymo公司正在加快其位于亚利桑那州新工厂的无人驾驶出租车(robotaxi)生产进度
  • react-transition-group 在 React 18 及以上版本中的兼容性问题
  • stm32之输出比较OC和输入捕获IC
  • 域名别名(CNAME)解析及域名注册操作步骤
  • 学习海康VisionMaster之间距检测
  • 深度学习系统学习系列【6】之深度学习技巧
  • 36.金属壳体材料的选择与工艺处理对EMC的影响
  • 解决Jenkis安装、配置及账号权限分配时遇到的问题
  • 编译原理期末重点-个人总结——2 文法与语言
  • Gradio全解20——Streaming:流式传输的多媒体应用(6)——RT-DETR模型构建视频流目标检测系统
  • 英伟达语音识别模型论文速读:MOSEL 数据集