无法在Mac OS X主机上的Windows 10 VirtualBox VM中运行基于Docker的Windows容器

当我尝试使用以下命令运行基于docker的Windows容器时,出现以下错误:

docker pull microsoft/dotnet-framework docker run -it microsoft/dotnet-framework cmd 

docker:来自守护进程的错误响应:容器31112532fbefca415cfb10134612cf4467c084e93e699b7caa320ca60f5df266在CreateContainer期间遇到错误:Windows系统调用失败:此系统上不存在pipe理程序。 (0xc0351000)

Docker for Windows在Macbook Pro(基于Intel,2016,OS X El Capitan)上的Windows 10 Pro VM(使用VirtualBox)中设置。 在Docker的设置中,我切换到使用Windows容器。 有没有OS X的特定问题? 因为我可以在运行Windows 10 Pro的个人电脑上工作。

在Windows 10上运行Docker Windows容器时,需要使用Hyper-V。 这对于VirtualBox不起作用,因为VirtualBox不支持嵌套虚拟化 。

相反,您应该在VirtualBox虚拟机中安装Windows Server 2016(WS2016)。 WS2016可以运行具有进程隔离function的Docker Windows容器,而不需要Hyper-V。

您可以免费试用WS2016 , Stefan Scherer维护一套自动安装和configuration的Vagrant脚本 。