【问题标题】:How docker desktop runs linux containers on Windows machinedocker desktop 如何在 Windows 机器上运行 linux 容器
【发布时间】:2019-01-19 07:16:27
【问题描述】:

我已经在我的 Windows 10 笔记本电脑上安装了 Docker for Windows。现在因为有了这个“Docker for Windows”,我也可以在我的 windows 10 笔记本电脑上运行 Linux 容器。它是如何实现的?我有一些疑问,我在这里遗漏了什么吗?

查看图片以获得更好的可见性

1) 我的机器是 Windows 10 有 Windows 内核。对吧?

2) 当我选择运行 Linux 容器的选项时,我认为 Linux 虚拟机运行在我的 Windows 10 机器之上,并且在该之上运行 Linux 容器。对吗?

3) 如果Linux VM 运行在Windows 机器的TOP 上,使用谁的内核? Linux VM 内核还是 Windows 10 内核?

4) 那么我们怎么能说容器不包含操作系统,对于 Windows,它们运行的​​是 Linux VM。

5) 现在如果我运行第二个容器,它会在已经运行的 Linux VM 之上运行,还是会再次启动新的 Linux VM?我认为它会在同一个正在运行的 linux VM 上运行,但要求不会有任何混淆。

6) 如果 Linux VM 在 Windows 机器的 TOP 上运行,那么我们是否可以像 Linux VM 的版本等一样控制正在运行的 Linux VM,或者它总是相同的,我们无法控制是吗?

7) 如果 Linux 虚拟机在 Windows 机器上运行,那么 Windows 资源对 Linux 虚拟机和容器不可见吗?如果它是可见的,那么 Linux 虚拟机如何与 Windows 主机通信?

【问题讨论】:

  • 好问题!

标签: docker containers


【解决方案1】:

1) 我的机器是 Windows 10 有 Windows 内核。对吧?

答:是的。

2) 当我选择运行 Linux 容器的选项时,我认为 Linux 虚拟机在我的 Windows 10 机器上运行,并且在该机器上运行 Linux 容器。对吗?

答:是的。一个名为 mobylinux 的 hyper-v linux 虚拟机将在那里,您可以在 hyper-v 管理器中看到它。

3) 如果Linux VM 运行在Windows 机器的TOP 上,使用谁的内核? Linux VM 内核还是 windows 10 内核?

A:hyper-v vm 使用 linux 内核。

4)然后我们怎么能说容器不包含操作系统,对于 Windows,它们正在运行 Linux VM。

答:不确定您从哪里获得信息。 docker 镜像只有文件系统,例如ubuntu16.04 文件系统,但没有内核。容器运行时,会使用镜像的文件系统并共享宿主机的内核(可能你的意思是它没有自己的内核,所以你说它没有操作系统?)

5) 现在如果我运行第二个容器,它会在已经运行的 Linux VM 之上运行,还是会再次启动一个新的 Linux VM?我认为它会在同一个正在运行的 linux VM 上运行,但要求不会有任何混淆。

A:是的,它会再次在同一个 linux 虚拟机上运行。

6) 如果 Linux VM 在 Windows 机器的 TOP 上运行,那么我们是否可以像 Linux VM 的版本等一样控制正在运行的 Linux VM,或者它总是相同的,我们无法控制是吗?

A:不,看到这个discussion,好像不能ssh到vm,只是一些解决方法来访问vm的文件系统,所以没有找到任何方法来改变内核或linux发行版。

7) 如果 Linux 虚拟机在 Windows 机器上运行,那么 Windows 资源对 Linux 虚拟机和容器不可见吗?如果它是可见的,那么 Linux 虚拟机如何与 Windows 主机通信?

A:理论上,你可以将windows文件夹挂载到linux vm,然后容器可以使用linux文件夹和volume。 docker for windows 已经帮您完成了,右键单击任务栏中的图标,您可以看到如下内容,就像图片一样:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-02-01
    • 2017-05-23
    • 2022-10-06
    • 1970-01-01
    • 2019-11-26
    • 2021-02-28
    • 1970-01-01
    • 2018-01-04
    相关资源
    最近更新 更多