容器概念定义
分类:知识集锦 发布时间:2023/4/21 11:16:24

容器是对服务器CPU和内存等资源分割和调度的基本单位,在容器出现之前在操作系统通过进程来实现,但是计算资源的隔离和灵活调度不满足发展需要。容器是为开发者和系统管理员设计的,用于构建、发布和运行分布式应用的平台。

在操作系统中一个进程和操作系统构成完整环境,不同进程共享操作系统,对于容器来说一个容器和对应的主机构成完整环境。容器中提供应用程序完整的运行时环境,包括:

  • 应用程序的代码
  • 相关配置文件、库
  • 运行应用程序所需的依赖项

 

容器化则是一种应用程序或系统分发方法,将应用程序或系统及其依赖项与底层基础设施隔离开来。无论底层基础设施什么硬件,什么样的操作系统,只要系统支持容器。容器可以看成是操作系统级虚拟化,允许用户在容器中部署和运行分布式应用程序或系统。

 

容器与虚拟机区别

虚拟机和容器都是资源隔离的一种方式

虚拟机:通过硬件隔离技术,虚拟出物理环境进行资源的隔离,再安装一个完整的操作系统。

容器:最大的区别是GuestOS在容器中不存在,通过隔离文件系统和资源使用限制独立运行进程,共享操作系统内核

容器比虚拟机上更加轻量级,性能消耗更小

虚拟机上很难做到内存的共用,容器中可以做到不同容器之间内存的共用

 

当前容器技术标准

传统意义上的容器指代docker的概念已经发生了变化,在当前的容器环境下,原来docker环境下的dockershim逐渐演变为通过CRI插件来和containered交互,再由containered管理多个container。这个也成为主流和标准的方式,整个流程上更加的简洁。

OCI开放容器标准(Open Container Initiative)

CRI 是支持多种容器运行时的插件接口

Containerd可以在宿主机中管理完整的容器生命周期

runC是OCI的参考实现

第一种是docker模式,通过dockershim跟docker引擎交互,再和Containered打交道,整个链路较长,逐渐被废弃

第二种是通过CRI-Containered直接和containered交互

第三种方式,是把CRI插件嵌套到Containered中

第四种方式,直接通过CRi-O运行

体验创新云技术带来核心业务效率显著提升
立即预约,加速企业数字化转型进程
Copyright ⓒ 2022 苏州博纳讯动软件有限公司 国徽 苏ICP备13004761号 法律声明及隐私政策