在Windows Server 2016中使用Hyper-V中的Docker和Compose

时间:2017-07-18 17:51:23

标签: windows docker docker-compose windows-server-2016 windows-container

我目前有一台Hyper-V虚拟机,其客户操作系统是Microsoft Server 2016

我能够安装Docker Service并使用命令行创建一个docker镜像

我想在使用compose的Visual Studio中尝试相同的过程,但它看起来只有在安装了ToolBox时才能工作。我安装了工具箱,当我构建时,我得到了关于卷规范的错误,我相信这是因为目标操作系统是Linux。

由于Windows Server 2016与Docker for Windows不兼容,因此在针对Windows Containers onc时只能使用service + powerhsell,如果他们想在Visual Studio中使用Compose,我将不得不禁用Hyper -visor内部并确保Linux VM正在运行?

我对使用Docker的Windows Server + VS的工作流程感到有些困惑。谢谢你的任何澄清。

编辑:

我卸载了ToolBox以简化环境,我下载了这样的方式:

Invoke-WebRequest " https://github.com/docker/compose/releases/download/1.15.0-rc1/docker-compose-Windows-x86_64.exe" -UseBasicParsing -OutFile $Env:ProgramFiles\docker\docker-compose.exe

现在构建错误是:

 ERROR: for dockercompose1517717654_azurecontainersite_1  __init__() got an 
 unexpected keyword argument 'cpu_count'
 ERROR: for azurecontainersite  __init__() got an unexpected keyword 
 argument 'cpu_count'
 Traceback (most recent call last):
 File "docker-compose", line 3, in <module>
 File "compose\cli\main.py", line 68, in main
 File "compose\cli\main.py", line 118, in perform_command
 File "compose\cli\main.py", line 926, in up
 File "compose\project.py", line 424, in up
 File "compose\parallel.py", line 69, in parallel_execute
 TypeError: __init__() got an unexpected keyword argument 'cpu_count'
 Failed to execute script docker-compose.

1 个答案:

答案 0 :(得分:0)

目前,Visual Studio工具仅支持Linux容器。如果/何时发生变化,我将更新此答案。

为了让VS使用Compose在Server 2016上运行,我使用以下链接安装了Docker for Windows的边缘版本:

https://store.docker.com/editions/community/docker-ce-desktop-windows