1 Hello World

  1. docker run hello-world
  1. 在本地查找是否有hello-world镜像,如果有,安装镜像;
  2. 如果本地没有找到镜像,则会去远端库查拉取是否有hello-world镜像,如果有,安装镜像;
  3. 如果均未找到镜像,则报错。

2 底层原理

image.png

docker和kvm都是虚拟化技术,它们的主要差别:

  1. Docker有着比虚拟机更少的抽象层
  2. docker利用的是宿主机的内核,VM需要的是Guest OS

3 运行底层原理 - 图2

二者的不同:

  • VM(VMware)在宿主机器、宿主机器操作系统的基础上创建虚拟层、虚拟化的操作系统、虚拟化的仓库,然后再安装应用;
  • Container(Docker容器),在宿主机器、宿主机器操作系统上创建Docker引擎,在引擎的基础上再安装应用。

所以说,新建一个容器的时候,docker不需要像虚拟机一样重新加载一个操作系统,避免引导。docker是利用宿主机的操作系统,省略了这个复杂的过程,秒级!

虚拟机是加载Guest OS ,这是分钟级别的