重学Docker (2)

重学Docker

Infrastructure (基础设施):是硬件设施,理解为主机,即笔记本,云服务器

Host Operating System (主机操作系统):是主机的物理操作系统,即日常说的操作系统,Linxu、Windows

Hypervisor (虚拟机监视器):是运行在基础物理服务器和虚拟操作系统间的中间软件层,各应用和虚拟系统可共享硬件

Guest OS (宿主系统):虚拟的操作系统,虚拟机内部运行的操作系统,有完整的硬件和内核(Docker是共享)

Bins/Libs (命令/资源):二进制命令和资源库

APP (应用程序):用户安装的程序


缺点:要运行几个隔离的应用,就要监视器启动几个宿主系统,也就是几个虚拟机。虚拟机模拟了多个隔离的系统,占用了很多的硬盘、CPU、内存,所以启动也很缓慢。



6.2 Docker

Docker是运行容器的引擎,我们将 操作系统的基础库文件、应用程序、所需的依赖等打包到镜像中,然后通过镜像创建容器(类和对象),而容器就在Docker中运行

重学Docker

Docker Daemon (守护进程):守护进程取代Hypervisor,是个进程,负责管理Docker容器


守护进程与宿主机通信,为容器分配资源

使用宿主机的硬件资源,无需虚拟化硬件资源,所以容器无需加载内核,因此是秒级

Docker使用了cgroup + namespace,前者限制资源集,后者限制可访问权限

Docker是Client-Server结构,守护进程在宿主机上,客户端socket连接进程管理运行在主机上的容器



6.3 对比

虚拟机:彻底隔离整个运行环境,每个运行的虚拟系统都是完全隔离的

Docker:隔离不同的应用程序,比如数据库,后端,前端等


比对项 Container(容器) VM(虚拟机)
启动速度   秒级   分钟级  
运行性能   接近原生   有所损失  
磁盘占用   MB   GB  
数量   成百上千   一般几十台  
隔离性   进程级别   系统级别  
操作系统   只支持Linux   几乎所有  
封装程度   只打包项目代码和依赖关系,共享宿主机内核   完整的操作系统  




7. 图形化界面

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zzspdj.html