是否可以在 VMware 和 Hyper-V 等 1 类虚拟机管理程序上运行 Docker 裸机?
Docker 使用与主机相同的内核。那么如果虚拟机管理程序基于 Linux,那么可以吗?有这样的虚拟机管理程序吗?
或者我误解了整个主题?
答案1
容器是一种轻量级进程隔离技术,类似于 chroot 或 jail。这不是一个新想法,但如今很流行。
最初的重点是不需要(物理或虚拟)硬件和相关操作系统。也称为裸机。当然,在虚拟机中运行它也是可能的。
决定要使用哪种容器工具。Docker 是其中之一,还有其他工具。
容器运行时是一种利用特殊沙盒功能的应用程序。它本身不是操作系统或虚拟机管理程序。因此,请确定在哪个操作系统和硬件上运行此计算工作负载。
几乎可以肯定的是,商品容器假定使用 Linux,尽管你可以在 Docker 中运行 Windows 容器。因为你可以选择流行的 Linux 发行版或者专为容器构建的发行版您还可以选择在裸机或虚拟机中运行。这取决于您的个人偏好以及对管理虚拟机的熟悉程度。
不赞同任何特定项目,但一些例子可以说明选择的多样性。这两个都是 Linux 容器。
- Docker 安装在 Ubuntu 中,作为 Proxmox 集群中的 VM 运行。
- Fedora CoreOS 位于 OpenStack 集群的裸机上,目前运行 Docker,并运行 Kubernetes 作为后续项目。
答案2
不,这是不可能的。Hyper-V 没有 Linux 内核,而是 Windows。要在 Windows 上运行 Docker,您需要在 VM 中运行它。虽然 ESX 是基于 Linux 的,ESXi 不是,因此我怀疑在其上直接运行 Docker 是否可行,即使可行也会很不安全,而且肯定会使您的支持失效。