Windows 10容器功能包括哪些功能,为什么在此之上我需要Windows的Docker?

时间:2019-01-07 20:03:09

标签: windows-10 containers

根据下面的屏幕截图,我了解Windows 10专业版已经具有一定级别的Containers功能或支持。

enter image description here

但是,当我浏览包括this Quick Start Guide在内的Windows 10容器培训文档时,他们都需要在Windows 10上安装适用于Windows的Docker。

上面的屏幕快照中显示的Windows 10容器功能包含什么,为什么我还需要Docker for Windows?

1 个答案:

答案 0 :(得分:2)

我不是Windows内核方面的专家,但是对Linux容器有所了解,因此我在阅读windows documentation

之后会进行回答

Docker是创建Linux容器的工具,由于以下两个功能,它是可能的:在指定版本中添加的Linux内核中添加了cgroups(2.6.24)和Namespaces(2.4.19) 。

换句话说,docker只能在Linux主机上运行。要在任何其他主机(Mac,Windows)上运行,docker需要创建一个虚拟机,该虚拟机将运行Linux内核,然后在其之上运行docker。这是一个很好的解释,说明容器与虚拟机管理程序之间的区别-LXC vs Hypervisor

但是Windows 10增加了对内核名称空间的支持,并支持以下类型的容器:-

  1. Windows服务器容器:类似于Linux容器,因为它们使用名称空间隔离软件环境。容器与主机共享内核。
  2. Hyper-V隔离:为了“更好的安全性”,Windows似乎为每个容器提供了一个虚拟机。这种设计类似于Docker在先前版本的Windows中已经具有的设计。

为回答您的问题,

  

Windows 10容器功能包括什么?

Windows已添加了名称空间,并在本地无需支持虚拟机管理程序即可支持类似容器的Linux,即容器与主机共享内核

  

为什么我还需要Windows版Docker?

独自创建一个容器是一项艰巨的任务。您必须正确隔离名称空间,并注意资源泄漏。 Docker使您更轻松。但是,看起来Windows中的Docker仍不直接在主机上支持容器。但是,它可以在虚拟机中运行Windows内核,并在顶部创建Windows容器,这是一项新功能。

同样,我对Windows容器的知识有限,希望您有足够的指针来继续下去!