posts - 360,comments - 0,views - 19万

containerd 提供了一组运行容器的 API。Docker 引擎通过调用 GRPC API 来启动执行进程,随后会启动管理器和执行器来负责监控和运行容器。容器最后通过runC来运行,runC 也是 Docker的另一个开源项目,它实现了 OCI 运行时标准。(OCI:开放容器协议,OCI开发了runC)。runC 是一套符合OCI标准的容器引擎;其是一个非常独立,真正创建容器的组件,runC可以独立于dockerd创建、操作容器。

 

简而言之:

containerd独立负责容器运行时和生命周期(如创建、启动、停止、中止、信号处理、删除等)containerd 只是一个守护进程

容器的实际运行时由 runc 控制

containerd 主要职责是镜像管理(镜像、元信息等)、容器执行(调用最终运行时组件执行)。

containerd-shim 调用runc启动容器,监控容器进程状态,回收容器中的相关进程等

dockerd是docker engine守护进程,dockerd启动时会启动containerd子进程,dockerd与containerd通过rpc进行通信

 

Docker 如何运行一个容器?

  1. Docker 引擎创建容器映像
  2. 将容器映像传递给 containerd
  3. containerd 调用 containerd-shim
  4. containerd-shim 使用 runC 来运行容器
  5. containerd-shim 允许runC在启动容器后退出

docker 简单探索

  • docker:Docker 客户端的可执行文件,用于与 Docker 守护进程进行交互。
  • docker-compose:Docker Compose 的可执行文件,用于定义和管理多个 Docker 容器的应用程序。
  • docker-containerd:Docker 使用的容器运行时工具,负责管理和执行容器。
  • docker-containerd-ctr:Docker Containerd 的命令行工具,用于与 Containerd 进行交互。
  • docker-containerd-shim:Docker Containerd 的 shim 进程,用于将容器的请求传递给 Containerd 容器运行时。
  • dockerd:Docker 守护进程的可执行文件,负责管理和运行容器。
  • docker-init:Docker 容器的初始化进程。
  • docker-proxy:Docker 网络代理,用于处理容器内部和外部网络之间的连接。
复制代码
containerd 是一个面向容器的守护程序,用于管理容器生命周期。它是 Kubernetes 默认的容器运行时之一,负责管理容器的创建、启动、停止等操作。以下是一些 containerd 的基础命令:

ctr: ctr 命令是 containerd 提供的命令行工具,用于与 containerd 守护进程进行交互。一些常用的 ctr 命令包括:

列出所有容器:ctr containers ls
查看容器详细信息:ctr containers inspect <container-id>
启动容器:ctr containers start <container-id>
停止容器:ctr containers stop <container-id>
删除容器:ctr containers rm <container-id>
containerd: containerd 命令本身也可以用来管理 containerd 守护进程,常见的用法包括:

启动 containerd 守护进程:sudo containerd
停止 containerd 守护进程:sudo pkill containerd
ctr-cri: 除了 ctr 命令外,containerd 还提供了一个用于与 CRI(Container Runtime Interface)兼容的接口的命令 ctr-cri,用于与容器运行时进行交互。

这些是一些 containerd 的基础命令,帮助你管理容器的生命周期。如果你需要了解更多关于 containerd 的命令和功能,可以查阅 containerd 的官方文档或运行 c
复制代码

 

posted on   属于我的梦,明明还在  阅读(248)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 2025年我用 Compose 写了一个 Todo App
· 张高兴的大模型开发实战:(一)使用 Selenium 进行网页爬虫
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示