Docker Windows 2019 无法切换到 Linux OSType

Docker on Windows 2019 cannot switch to Linux OSType

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

我启用了 Hyper-V windows 角色和容器角色。 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 管理器时,我希望看到 运行ning Linux 的虚拟机,但是没有虚拟机。我认为这可能与问题有关。

所以我能够解决这个问题。我目前 运行 在 Windows 2019 服务器上的 Docker 中安装了一个 Linux 容器,但 OSType 仍然显示 Windows...我想我应该不期望该值会更改为 Linux(在我的本地 Windows 10 机器上它说 OSType:Linux)?

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

  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/