加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

如果Docker在Windows上本机运行,那为什么它需要hyper-v

发布时间:2020-12-16 03:37:45 所属栏目:安全 来源:网络整理
导读:如果Docker社区在Windows上本机运行,那为什么它需要Hyper-v? I.E.,本地意味着Docker-Engine可以在Windows上运行指令吗?它看起来像是它仍然启动一个Linux VM并在其中运行. 对我来说,似乎docker-toolbox使用运行linux的oracle hyper-visor,而Docker社区使用

如果Docker社区在Windows上本机运行,那为什么它需要Hyper-v? I.E.,本地意味着Docker-Engine可以在Windows上运行指令吗?它看起来像是它仍然启动一个Linux VM并在其中运行.

对我来说,似乎docker-toolbox使用运行linux的oracle hyper-visor,而Docker社区使用运行linux的Hyper-V.我忽视了另一个重要的区别吗?

它是否正确?我理解“本地”这个词是错误的,是码头工人误用了这个词,还是我还缺少其他一些方面?

我问的原因是因为我注意到你没有将Docker-machine与社区版一起使用,我想知道为什么会这样. docker-machine是在Windows上运行的东西,而Docker Engine却没有?我认为docker这个词过载,在这种情况下可能导致混乱:)

提前致谢!

Docker对Windows的支持有几种变体:

> Docker Toolbox包括Docker Machine,它将在VirtualBox内部旋转boot2docker镜像.这些是在VM内部运行Linux内核的Linux容器.这最初是Windows用户的唯一选择.
> Docker for Windows使用Hyper-V运行基于LinuxKit的Moby VM来运行Linux映像. LinuxKit提供了一个基于容器的Linux操作系统,并且有一些集成使它看起来不像最终用户的虚拟机,例如您可以使用127.0.0.1而不是VirutalBox VM的IP.如果您有Hyper-V可用并希望在Windows上运行Linux容器,则这是首选选项.
> Windows Server Containers在同一主机操作系统上运行Windows二进制文件,类似于Linux操作系统上的Linux容器不需要VM.
> Hyper-V容器,在单独的VM内运行Windows二进制文件以进行额外隔离.

您可以在Microsoft’s docs中阅读有关后两个选项的更多信息.

需要注意的重要一点是,当您在支持的服务器(如2016)上安装Docker for Windows时,您可以在两者之间切换选项2,3和4.对于Linux和Windows容器,有一个影响所有正在运行的容器和命令的switch in the settings.在Windows Server Containers和Hyper-V容器之间,docker run命令行上有–isolation选项.因此,即使您只需要选项3,我相信您需要支持Hyper-V才能覆盖2和4.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读