0

我无法切换 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 管理器时,我希望看到一个运行 Linux 的虚拟机,但是没有虚拟机。我认为这可能与问题有关。

4

1 回答 1

7

所以我能够解决这个问题。我目前正在 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/

于 2019-08-27T19:17:32.887 回答