docker主机OS和容器基础镜像OS之间的关系是什么?

我不确定我在问正确的问题,但是当我一直在阅读Docker的所有东西时,我可以看到我可以在Ubuntu 12.04上安装Docker(例如),然后我可以安装一个Fedora容器或不同版本的ubuntu? (有一个例子,用户在容器中安装了busybox。)

当然,我可能完全错了。

但是,我希望基地系统和集装箱之间有一个短暂的联系。

重申:主机操作系统和容器基础映像的操作系统有什么关系?

正如BraveNewCurrency所提到的,主机操作系统和容器之间唯一的关系就是内核。

这是Docker和“常规”虚拟机之间的主要区别之一,没有开销,一切都直接发生在主机的内核中。

这就是为什么你只能在容器中运行基于Linux的分发/二进制文件。 如果你想运行其他的东西,这不是不可能的,但是你需要在容器中进行某种虚拟化(qemu,kvm等)

Dockerpipe理作为文件系统表示的图像。 你可以安装任何Linux发行版或简单地把二进制文件。

的确,为了方便示例,我们经常依赖基础图像,但是您也可以创build没有任何分发库/二进制文件的图像。 这样,你将有一个非常小但function的容器。

关于发行版还有一点:由于内核仍然是主机的内核,因此您将不会拥有该发行版提供的任何特定内核模块/修补程序。

从字面上看,它们唯一共同的就是内核。 他们的整个世界(文件系统)都在docker集装箱里。