Docker似乎包括OS?

时间:2018-11-13 00:21:40

标签: docker

我刚刚启动docker。

根据某些文章,docker与VM的最大区别在于,它不是在仿真的OS上运行,而是在主机内核上运行。

但是,当我在Mac上运行nginx图像时:

$ docker run -d nginx
a88142a23cb4e1900093ee4a27303f7d80adb0305e4008203829a84ae29ca4f2
$ docker exec -it a88142a23cb4e1900093ee4a27303f7d80adb0305e4008203829a84ae29ca4f2 bash
root@a88142a23cb4:/# cat /etc/*release
PRETTY_NAME="Debian GNU/Linux 9 (stretch)"
NAME="Debian GNU/Linux"
VERSION_ID="9"
VERSION="9 (stretch)"
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"
root@a88142a23cb4:/# 

所以对我来说,这个容器似乎实际上在运行Debian,并在其上面运行nginx。

现在,我完全感到困惑。有人可以解释这个输出吗?

1 个答案:

答案 0 :(得分:1)

Docker使用基本映像来启动,通常是一个OS映像(实际上不是OS。它没有内核)。它提供了文件系统和必要的库来运行您的应用程序。

有关更多详细信息,请参见以下答案:https://stackoverflow.com/a/53049134/7695859