Docker基础(底层原理)

四、Docker运行底层原理

4.1Docker是怎么工作的

Docker是一个Client-Server结构的系统,Docker守护进程运行在主机上,然后通过Socket连接从客户端访问,守护进程从客户端接受命令并管理运行在主机上的容器,==容器是一个运行环境,就是docker图标上的集装箱==

4.2Docker为什么比VM快
  • Docker有着比虚拟机更少的抽象层。由于docker不需要Hypervisor 虚拟机监视器,是用来建立与执行虚拟机器的软件、固件或硬件。提供虚拟的作业平台来执行客体操作系统(guest operating systems),负责管理其他客体操作系统的执行阶段;这些客体操作系统,共同分享虚拟化后的硬件资源。实现硬件资源虚拟化,运行在docker容器上的程序直接使用的都是实际物理机的硬件资源。因此在CPU、内存利用率上docker将会在效率上有明显优势。
  • Docker利用的是宿主机的内核,而不需Cuest OS客体操作系统。因此,当新建一个容器时,docker不需要和虚拟机一样的重新加载一个操作系统内核。仍而避免引寻、加载操作系统内核反个比较费时费资源的过程,当新建一个虚拟机时,虚拟机软件需要加载Guest OS,返个新建过程是==分钟级别==的。而docker由于直接利用宿主机的操作系统,则省略了返个过程,因此新建一个docker容器只需要==几秒钟==。
  • 虚拟机、docker对比
Docker容器 虚拟机(VM)
操作系统 与宿主机共享OS 宿主机OS上运行虚拟机OS
存储大小 镜像小,便于存储和传输 镜像庞大(vmdk\vdi)等
运行性能 几乎无额外性能损失 操作系统额外的CPU、内存消耗
移植性 轻便、灵活,适应于Linux 笨重,与虚拟化技术耦合度高
硬件亲和性 面向软件开发者 面向硬件运维者
部署速度 快速,秒级 较慢,10s以上

Author: Lelege
Reprint policy: All articles in this blog are used except for special statements CC BY 4.0 reprint polocy. If reproduced, please indicate source Lelege !
评论
 Previous
Docker基础(常用命令) Docker基础(常用命令)
五、常用命令5.1帮助命令 docker version //验证:是否安装成功 docker info //对docker安装信息的描述 docker --help //docker命令提示(可以查询docker的所有操作命令) 5.
2022-05-26
Next 
Docker基础(简介) Docker基础(简介)
一、Docker简介Docker图标详解 1.Docker是什么? Docker是基于 Go语言实现的云开源项目; 主要目标是 “Build, Ship and Run Any App,AnyWhere”,也就是通过对应组件的封装、分发、部
2022-05-26
  TOC