什么是Docker?

[Docker]的概念。

image.png

使用虚拟化的原因是什么?

为了更有效地利用升级后的计算机性能,虚拟化技术迅速涌现。

从服务器管理员的角度来看,资源被低效地浪费在只有10%左右的CPU利用率上。然而,将所有服务放在一个服务器中可能会导致稳定性问题。

因此,为了提高稳定性并最大限度地利用资源,服务器虚拟化技术应运而生。

作为大家熟知的典型虚拟化平台,有虚拟机(VM)。

容器是什么?

image.png

VM虚拟化平台与Docker虚拟化平台的对比。

如果使用现有的我们已经习惯的VM的情况下,需要在HostOS上进行虚拟化的Hypervisor引擎,然后在其上面运行GuestOS来使用。
可以认为这将在虚拟化的硬件上安装操作系统,从而基本上完全与Host分离。
另一方面,容器基础设施的虚拟化是通过Docker引擎将应用程序运行所需的二进制文件上载。
从操作系统虚拟化的角度来看,虽然与Host OS完全分离的好处是明显的,但必须承认在Host OS之上安装另一个操作系统会使其更加沉重且变慢,而容器基础设施的虚拟化可以在Host OS和Docker引擎上立即运行,并共享Host的内核。
通过共享内核,可以简化IO处理并提高性能效率。
使用容器意味着不是创建虚拟机,而是将HostOS使用的资源分离出来,以便创建各种环境。

有人说容器基础架构比操作系统虚拟化更出色,但并不是一定如此。

操作系统虚拟化提供了比容器化更高级别的隔离水平,这在安全方面更有优势。此外,操作系统虚拟化还有不共享内核的优点。由于不共享内核,可以实现多操作系统的运行。然而,由于不共享内核,无法实现多操作系统是操作系统虚拟化的缺点,例如无法在Linux上运行Windows。尽管如此,为什么要使用Docker的原因是性能提升、出色的可移植性以及可灵活扩展的能力。

bannerAds