在 Windows Server 2016 中使用 Docker 并在 Hyper-V 中组合

Using Docker and Compose in Hyper-V with Windows Server 2016

我目前有一台 Hyper-V 虚拟机,其来宾 OS 是 Microsoft Server 2016

我能够安装 Docker 服务并使用命令行创建 docker 图像

我想在 Visual Studio 中使用 compose 尝试相同的过程,但看起来只有安装了 ToolBox 才有效。我安装了工具箱,当我构建时,我在体积规格方面遇到错误,我相信这是因为目标 OS 是 Linux.

由于 Windows Server 2016 与 Docker for Windows 不兼容,是不是在针对 Windows Containers onc 时只能使用服务 + powerhsell ,如果他们想在 Visual Studio 中使用 Compose,我将不得不在内部禁用管理程序并确保 Linux VM 是 运行?

我对 windows 服务器 + VS 与 Docker 的工作流程有点困惑。感谢您的任何澄清。

编辑:

为了简化环境我卸载了ToolBox,我是这样下载compose的:

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.

目前 Visual Studio 工具仅支持 Linux 容器。 If/when 有变化我会更新这个答案。

同样为了让 VS with Compose 在 Server 2016 上工作,我为 Windows 安装了 Docker 的边缘版本,具有以下 link:

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