我对虚拟机和Docker容器的理解正确吗?

时间:2019-02-28 15:14:53

标签: docker virtual-machine hypervisor linux-containers

他们正在尝试解决什么问题:

在不需要修改程序的环境中运行程序。特别是在通常不可能这样做的环境中同时运行两个软件 例子:

  • 在一台计算机上同时运行两个操作系统,即Windows 10和Ubuntu 18.10
  • 同时运行需要不同版本的运行时环境(即节点6和节点10)的两个程序

实现此目的的总体思路:

隔离

软件部分彼此之间以及用于使其工作的底层系统(除非我们明确允许共享特定资源)不相互了解

流行文化参考:

杜鲁门表演。

在VM或docker容器中运行的软件就像Truman:它不知道他所生活的环境只是与现实世界隔离的沙盒,并且内部发生的一切都由Orche精心策划和观察第三方:显示运行程序(分别是超级管理程序或docker守护程序)。但是有时候,应用程序会遇到一些奇怪/不真实的行为(因为showrunners并不完美)。

它们有何不同:

虚拟机是硬件级别的抽象(VM模拟真实的机器),而Docker容器是应用程序级别的抽象(它“模拟” OS环境,即容器共享主机内核并具有自己的文件系统,名称空间和网络)< / p>

0 个答案:

没有答案