(04)Docker运行演示hello-world及其底层原理

Posted javasl

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了(04)Docker运行演示hello-world及其底层原理相关的知识,希望对你有一定的参考价值。

  1、运行hello-world镜像

docker run hello-world

  由于本地没有hello-world这个镜像,所以会下载一个hello-world的镜像,并在容器内运行,输出“Hello from Docker!”后容器停止

技术图片

  运行过程总结如下:

  开始Docker在本机中寻找该镜像 ,如果找到,以该镜像为模板生产容器实例运行,否则的话去远程库上寻找该镜像,如果找到就下载该镜像到本地,并以该镜像为模板生产容器实例运行,否则返回失败错误,找不到该镜像。

  2、Docker是怎样工作的

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

技术图片

  3、为什么Docker比VM快

  (1)docker有着比虚拟机更少的抽象层。由于docker不需要Hypervisor实现硬件资源虚拟化,运行在docker容器上的程序直接使用的都是实际物理机的硬件资源。因此在CPU、内存利用率上docker将会在效率上有明显优势。

  (2)docker利用的是宿主机的内核,而不需要Guest OS。因此,当新建一个容器时,docker不需要和虚拟机一样重新加载一个操作系统内核。能够避免加载操作系统内核这个比较费时费资源的过程。当新建一个 虚拟机时,虚拟机软件需要加载Guest OS,这个新建过程是分钟级别的。而docker由于直接利用宿主机的操作系统,则省略了这个过程,因此创建一个docker容器只需要几秒钟。

  下图是docker和虚拟机的对比:

技术图片

技术图片

 

以上是关于(04)Docker运行演示hello-world及其底层原理的主要内容,如果未能解决你的问题,请参考以下文章

Docker 之 运行第一个程序

Docker第一弹:下载运行hello-world程序

4docker hello-world

docker镜像拉取运行删除

Docker hello-world:身份验证错误

docker之安装配置