Docker能做什么?
比较Docker和虚拟机技术的不同:

  • 传统虚拟机,虚拟出一条硬件,运行一个完整的操作系统,然后在这个系统上安装和运行软件。
  • 容器内的应用直接运行在宿主机的上,容器是没有自己的内核的,也没有虚拟我们的硬件,所以就轻便了。
  • 每个容器间是互相隔离,每个容器内都有一个属于自己的文件系统,互不影响。

Docker是怎么工作的?
Docker是一个Client-Server结构的系统,Docker的守护进程运行在主机上。通过Socket从客户端访问。
Docker-Server接收到Docker-Client的指令,就会执行这个命令!

为什么Docker比VM快?

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

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

Docker的工作原理相关推荐

  1. 用一个实际例子理解Docker volume工作原理

    要了解Docker Volume,首先我们需要理解Docker文件系统的工作原理.Docker镜像是由多个文件系统的只读层叠加而成.当一个容器通过命令docker run启动时,Docker会加载只读 ...

  2. 用一个实际例子理解Docker volume工作原理 1

    要了解Docker Volume,首先我们需要理解Docker文件系统的工作原理.Docker镜像是由多个文件系统的只读层叠加而成.当一个容器通过命令docker run启动时,Docker会加载只读 ...

  3. docker 基础工作原理(一)

    注:以下博文来源于我的独立博客网站:http://www.chenbiaolong.com/,由于原网站是用markdown写的,复制到这边格式有点问题. 以后博文将主要迁移到www.chenbiao ...

  4. docker flannel 工作原理/模型 SNAT规则优化 3

    flannel 工作原理 [root@k8s3 ~]# route -n Kernel IP routing table Destination     Gateway         Genmask ...

  5. Docker Weave 介绍 or 工作原理

    Docker Weave Network Weave Network:属于第三方网络项目. Weave在Docker主机之间实现Overlay网络,使用业界标准VXLAN封装,基于UDP传输,也可以加 ...

  6. 图片详解docker命令和原理

    10张图带你深入理解Docker容器和镜像 [编者的话]本文用图文并茂的方式介绍了容器.镜像的区别和Docker每个命令后面的技术细节,能够很好的帮助读者深入理解Docker. [Kubernetes ...

  7. Docker学习(6)——registry私有仓库工作原理(续)

    前言 我们在前文中讲了如何搭建私有仓库,并且为私有仓库加密.添加简单的图形界面:因为篇幅限制,我们将在本文中补充registry工作原理 情景A:用户要获取并下载镜像. 情景A:具体工作流程如下: 用 ...

  8. 【云原生 | 从零开始学Docker】一、Docker的安装,启动以及工作原理

    [从零开始学Docker]安装篇 一丶Docker浅谈 1.1Docker为什么出现 1.2Docker能干吗 二.Docker的安装 2.1 Docker的组成 2.2 安装前提 2.3 安装步骤 ...

  9. Docker镜像与容器的工作原理

    提纲 1.bootfs和rootfs 2.镜像层和镜像 3.容器层和容器 4.联合文件系统​ 1.bootfs和rootfs 一般而言,Linux的操作系统由两类文件系统组成:bootfs(boot ...

最新文章

  1. 数据库配置下拉框没有数据库可选
  2. document.body.clientHeight与document.documentElement.clientHeight
  3. jqGrid ColModel Options
  4. android android studio单元测试实例
  5. 软件质量模型 测试设计方法,质量模型-可靠性测试
  6. Gentle.Net学习笔记四:修改代码,使用Oracle数据库
  7. 【GitLab】与idea的搭配
  8. Lambda表达式及应用
  9. 关系型数据库与NoSQL数据库简述
  10. [bug解决] cannot import name ‘_validate_lengths‘ from ‘numpy.lib.arraypad‘
  11. Java基础篇:类的通用格式
  12. JavaWEB前端向服务器端发送对象
  13. linux 服务器 硬盘测试工具,linux硬盘检测工具:Smartmontools使用指南
  14. 毕业论文中含有Java需要哪些参考文献_Java毕业论文参考文献
  15. 【imessage软件群推送】 “CMCC“ | grep password #待补充 重置后撤销暂存的变更
  16. 深入浅出java并发编程(线程池)
  17. 电脑一些基础知识(一)
  18. java设计模式(13-19节)
  19. EasyRecovery最新中文Win/Mac全版本下载安装激活数据恢复软件
  20. 米兰2:2战平巴萨 席尔瓦最后关头致命一击

热门文章

  1. win10计算机文件夹选项在哪里,w10文件夹选项在哪_win10打开文件夹选项的三种方法...
  2. 最简单DIY串口蓝牙硬件实现方案
  3. OSPF与RIP协议相互导入
  4. 【火星人】开讲:JS Browser 与如何编制 MXP
  5. UPC Participate in E-sports(参加电子竞技)(Biginteger的平方根:二分或牛顿迭代法)
  6. 如何提高华容道的速度
  7. 7、《每周一点canvas动画》——边界检测与摩擦力(1)
  8. 双11的凌晨,如何证明你是一只程序猿?
  9. html文字段落分割,HTML设置水平分割线_html/css_WEB-ITnose
  10. 微服务架构 BFF和网关是如何演化出来的