首页 > 其他分享 >docker docker和container的关系

docker docker和container的关系

时间:2022-11-16 15:15:34浏览次数:93  
标签:关系 container ctr -- containerd crictl docker k8s

目录

docker docker和container的关系

  • docker 由 docker-client ,dockerd,containerd,docker-shim,runc 组成,所以 containerd 是 docker 的基础组件之一
  • 从 k8s 的角度看,可以选择 containerd 或 docker 作为运行时组件:其中 containerd 调用链更短,组件更少,更稳定,占用节点资源更少。所以 k8s 后来的版本开始默认使用 containerd,另一方面,也是因为k8s集群需要花费额外费用调用docker的接口,因此最新的k8s集群版本抛弃了docker
  • containerd 相比于 docker , 多了 namespace 概念,每个 image 和 container 都会在各自的 namespace 下可见
  • docker 作为 k8s 容器运行时,调用关系为:kubelet --> dockershim (在 kubelet 进程中) --> dockerd --> containerd
    containerd 作为 k8s 容器运行时,调用关系为:kubelet --> cri plugin(在 containerd 进程中) --> containerd

命令区分

ctr 是 containerd 的一个客户端工具。
crictl 是 CRI 兼容的容器运行时命令行接口,可以使用它来检查和调试 k8s 节点上的容器运行时和应用程序。
ctr -v 输出的是 containerd 的版本,crictl -v 输出的是当前 k8s 的版本,从结果显而易见你可以认为 crictl 是用于 k8s 的。
一 般来说某个主机安装了 k8s 后,命令行才会有 crictl 命令。而 ctr 是跟 k8s 无关的,主机安装了 containerd 服务后就可以操作 ctr 命令

# ctr -v
ctr github.com/containerd/containerd v1.4.11
# crictl -v
crictl version v1.21.0-k3s1

常用命令

image

image

文档参考

Docker && Container 对比 —— 筑梦之路

待完善。。。

标签:关系,container,ctr,--,containerd,crictl,docker,k8s
From: https://www.cnblogs.com/liwenchao1995/p/16895941.html

相关文章

  • docker
    初步认识Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可以可移植的镜像中,然后发布到任何流行的linux或者Windows操作系统的机器上,也可以......
  • 工业控制:PLC和SCADA的关系与区别
    对于控制工程领域的新手来说,一个常见的问题是:“PLC和SCADA有什么区别?它们之间的区别在于PLC是基于硬件的,而SCADA是基于软件的。PLC和SCADA都用于监测和控制许多不同行业的......
  • One or more Filters failed to start. Full details will be found in the appropria
    classpatch下创建logging.properties文件,查看更详细的日志信息handlers=org.apache.juli.FileHandler,java.util.logging.ConsoleHandler######################......
  • 【Docker】容器使用规范--安全挂载建议
    容器挂载过程和安全挂载建议 绑定挂载本文所提到的挂载主要指绑定挂载(bindmount),即通过-v/xx/xx:/xx/xx和--mounttype=bind,xxx,xxx两种方式设置的容器挂载(其余doc......
  • Docker图形化管理工具-Protainer
    目录1、简介2、部署2.1单节点部署:2.2compose部署:3、登入页面1、简介Portainer是一款基于GO语言开发的轻量级容器图形化管理工具,图形化管理容器、镜像、网络、数据卷、大......
  • docker 安装postgresql
    docker中安装创建postgresql容器dockerrun-d-p5432:5432--namepostgresql-vpgdata:/var/lib/postgresql/data-ePOSTGRES_PASSWORD=123456postgres创建pg......
  • 【Mysql】数据库主从搭建-基于docker
    后台可回复【1024】即可获取相关宝藏内容分享 :) 为什么基于Docker搭建?资源有限虚拟机搭建对机器配置有要求,并且安装mysql步骤繁琐一台机器上可以运行多个Docker容器Docker......
  • 【docker】docker虚拟容器的使用大全
    Docker容器详解Docker是基于Go语言开发的开源应用容器引擎,遵从ApacheLicence2.0协议,可以让开发者打包应用以及应用的依赖包到一个可移植的容器中,然后发布到各种发行版本的......
  • 16_5_docker-compose
    DockerComposeDockerCompose是用来做Docker的多容器控制,是一个用来把Docker自动化的东西。一、安装DockerCompose#Compose目前已经完全支持Linux、MacOS和W......
  • 775. 全局倒置与局部倒置 ----- 题目包含关系求补集
    给你一个长度为n的整数数组nums,表示由范围[0,n-1]内所有整数组成的一个排列。全局倒置的数目等于满足下述条件不同下标对(i,j)的数目:0<=i<j<nnums[i]......