Windows 2019上的Docker无法切换到Linux OSType

时间:2019-08-15 19:22:15

标签: linux docker windows-server-2019

我无法切换docker在2019 Windows Server上以Linux模式运行。我在网上找到了几本指南,展示了如何通过powershell进行操作。运行PS脚本后,我注意到hyper-v中未安装任何虚拟机,并且在服务器重启后,docker仍以Windows模式运行。

我启用了Hyper-V Windows角色和Containers角色。 Docker在Windows模式下似乎可以正常工作,但我无法将其切换到Linux。

这是我为进行切换而执行的PS:

Install-Module DockerProvider
Install-Package Docker -ProviderName DockerProvider -RequiredVersion preview

(重新启动计算机)

[Environment]::SetEnvironmentVariable("LCOW_SUPPORTED", "1", "Machine")
Restart-Service docker

当我运行docker info时,它继续显示OSType:windows。另外,当我查看Hyper-V Manager时,我希望看到运行Linux的VM,但是没有VM。我认为这可能与问题有关。

1 个答案:

答案 0 :(得分:2)

因此我能够解决此问题。我当前在Windows 2019服务器上的Docker中运行Linux容器,但OSType仍显示Windows ...我想我不应该期望该值会更改为Linux(在我的本地Windows 10计算机上显示OSType: Linux)?

无论如何,这是我在Windows 2019服务器上运行Linux容器所经历的步骤:

  1. 通过服务器管理器启用Hyper-V和容器->添加角色和功能
  2. 重新启动服务器
  3. 打开Powershell并运行以下命令

Powershell脚本:

Install-Module "DockerMsftProvider" -Force
Update-Module "DockerMsftProvider"
Install-Package Docker -ProviderName "DockerMsftProvider" -Update -Force

注意:如果系统提示您安装Nuget提供程序,则键入Y

Set-Content -Value "`{`"experimental`":true`}" -Path C:\ProgramData\docker\config\daemon.json
restart-service docker

这是我找到解决方案的地方:https://www.b2-4ac.com/lcow-linux-containers-on-windows-server/