
linux
虚拟机(VM)和 Docker 到底哪个更好,目前还没有明确的结论。尤其是 AWS 推出的 Firecracker 虚拟机,启动时间只需几十毫秒,甚至比 Docker 还快。然而,Docker 拥有完善的生态系统,迁移和管理更加便捷。过去,这两者之间的界限非常清晰。最初,Docker 是一种基于应用程序及其依赖项、CPU 和内存限制以及网络隔离生成的沙盒环境,它与宿主
linux 系统共享内核。而虚拟机则拥有独立的内核和根文件系统。在这一阶段,两者仍有显著区别。后来,Intel 的团队认为 Docker 共享内核的方式存在安全隐患,于是提出了 Kata Cont
AIners——为每个容器分配一个独立内核的概念。从那时起,Docker 开始向每个容器一个内核的方向发展。现在还有结合了 AWS Firecracker 的 Kata FC Runtime,几乎已经模糊了虚拟机和 Docker 之间的界限。此外,AWS 的 Firecracker 虚拟机还提供了 Firecracker Cont
AInerd 工具,可以像管理 Docker 容器一样管理虚拟机。
Google 也开发了用于 Docker 的 gVisor 内核,
IBM 似乎也在研究类似的技术。如今还出现了可启动容器(Bootable Cont
AIner),即可以通过 QEMU 启动的镜像。总结在 K
Ubernetes 中,借助 Kata FC,虚拟机可以像管理镜像一样被管理;而通过 Firecracker Cont
AInerd 等工具,虚拟机也可以像容器一样进行管理。这标志着两者之间的界限越来越模糊,技术正在不断融合和发展。