1 为什么会出现docker
纯物理机的部署方式
我们要将程序部署到一台机器上,用纯物理机器的部署方式,我们需要进行以下操作:
- 1.购买服务器
- 2.安装OS
- 3.安装应用
很明显,有以下明显缺点:
- 部署非常慢
- 成本高,需要购买多台服务器物理机
- 资源浪费,会造成硬件的浪费
- 难于迁移和扩展,对应用迁移、或者集群部署比较麻烦
- 可能被限定硬件厂商限制,不同品牌服务器或者不同OS
虚拟机的部署方式
虚拟机采用了Hypervisor虚拟化技术,可以在一台物理机上虚拟出多个操作系统
- 一台物理机可以部署多个App
- 每个App可以独立运行在VM中
虚拟化技术解决了物理机部署方式的缺点,但仍旧存在着缺点:
- 每台虚拟机都是完整的操作系统,要分配较多的资源,当虚拟机变得躲起来,宿主机的操作系统会被消耗殆尽。
虚拟化技术
一种可以将计算机各种实体资源予以抽象、转换后呈现出可供分割、组合为一个或多个电脑配置环境的资源管理技术。
物理机
对于一台计算机,可以分成三层:应用程序层、操作系统层、物理硬件层
虚拟机
全虚拟化:二进制翻译技术
Vmware创造性的提出了一个二进制翻译技术。即VMM扮演桥梁,将虚拟机中要执行的指令“翻译”成恰当指令在宿主物理计算机执行。所有工作的都是物理机本体。但是对于一些敏感指令可能会影像宿主机本体。
半虚拟化:Xen内核定制修改
由于敏感指令,