【问题标题】:Docker Desktop for Windows适用于 Windows 的 Docker 桌面
【发布时间】:2020-06-24 10:24:45
【问题描述】:

我正在尝试在我的 windows 10 Pro 64 位机器上运行 Docker 桌面,并具有以下构建规范和设置详细信息,

  • 版本--Windows 10 Pro 64位
  • 版本 -- 1903
  • 操作系统构建 -- 18362.657
  • CPU -- Intel i7
  • Hyper-V 状态 -- 已启用,我可以看到所有服务都运行良好。

我已安装 Docker Desktop 版本 2.2.0.3 (42716)。我以管理员身份运行它,在启动过程中它会抛出以下错误。

  • [12:59:40.968][HyperV][Info] 创建 VM DockerDesktopVM...
  • [12:59:44.416][HyperV][错误] 无法创建 Hyper-V VM:Microsoft.HyperV.PowerShell.VirtualizationException: Hyper-V 在尝试访问计算机“DESKTOP-1SOMU3A”上的对象时遇到错误,因为找不到该对象。该对象可能已被删除, 或者您可能无权执行该任务。验证计算机上的虚拟机管理服务是否正在运行。 如果服务正在运行,请尝试使用以管理员身份运行再次执行该任务。 ---> Microsoft.Virtualization.Client.Management.ObjectNotFoundException: Hyper-V 在尝试访问计算机“DESKTOP-1SOMU3A”上的对象时遇到错误,因为找不到该对象。 该对象可能已被删除,或者您可能无权执行该任务。验证计算机上的虚拟机管理服务是否正在运行。 如果服务正在运行,请尝试使用以管理员身份运行再次执行该任务。 在 Microsoft.Virtualization.Client.Management.HostComputerSystemView.GetPrimordialResourcePool(VMDeviceSettingType deviceType) 在 Microsoft.Virtualization.Client.Management.HostComputerSystemView.GetSettingCapabilities(VMDeviceSettingType deviceType,SettingsDefineCapabilities 能力) 在 Microsoft.HyperV.PowerShell.VMScsiController.CreateTemplateScsiController(VirtualMachine parentVirtualMachine) 在 Microsoft.HyperV.PowerShell.Commands.NewVM.ConfigureVirtualMachine(VirtualMachine vm,IOOperationWatcher operationWatcher) 在 Microsoft.HyperV.PowerShell.Commands.NewVM.CreateObjects(IOOperationWatcher operationWatcher)
    • ---内部异常堆栈跟踪结束---

我已经搜索过类似的问题,并且到目前为止已经完成了以下操作,但没有任何成功。

  1. 卸载并重新安装 Docker Desktop(系统重启)
  2. 在应用功能中打开和关闭 Hyper-V(系统重启)
  3. 更改了我的系统名称以避免任何特殊字符(尽管查看 错误消息,它没有反映更改的系统名称)。

不确定可能是什么问题。请提供指导。

谢谢

【问题讨论】:

    标签: windows powershell docker virtual-machine hyper-v


    【解决方案1】:

    尝试卸载 Docker 工具箱。我在 Windows 的 Docker 桌面上遇到了类似的问题。我之前卸载了docker toolbox后安装了docker toolbox,docker desktop for windows运行正常。

    【讨论】:

      【解决方案2】:

      似乎这仍然是 Docker for Windows 上的 open issue。正如issuethis thread 中的建议,您可以尝试:

      1. 打开窗口安全

      2. 打开应用和浏览器控件

      3. 点击底部的漏洞利用保护设置

      4. 切换到程序设置选项卡

      5. 在列表中找到C:\WINDOWS\System32\vmcompute.exe并将其展开

      6. 点击编辑

      7. 向下滚动到 代码流保护 (CFG) 并取消选中 覆盖系统设置

      8. 从 PowerShell 启动 vmcomputenet start vmcompute

      解决问题可能很有用,因为您可以找到其他潜在的解决方案,例如having your hostname and netbiosname matched

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-07-13
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-01-18
        • 2011-11-18
        • 2019-05-14
        相关资源
        最近更新 更多