我一直在阅读docker,我已经明白,与VM不同,docker使用主机操作系统的内核。为什么要求基本映像必须是操作系统。为什么docker不能使用来自主机操作系统的资源(例如:文件系统)并使用主机操作系统支持的隔离? (我假设主机操作系统提供隔离机制)
答案 0 :(得分:1)
这取决于您如何定义操作系统。 Docker镜像不是完整操作系统(与VM不同)。他们没有自己的内核。这意味着没有安装特定的内核模块(外部硬件的设备驱动程序等),因为主机操作系统已经安装了它们。
图像只是流行的Linux发行版的文件系统克隆(图像中的二进制文件是为目标arch构建的offcourse)。可能有多种原因,我会尝试在这里放一些: