Docker 桌面未启动 - 序列不包含匹配元素

Dee*_*haV 1 hyper-v docker windows-10 docker-desktop

操作系统:Windows 10 专业版

版本:专业版

编号:1903

构建:18362

构建实验室名称:18362.1.amd64fre.19h1_release.190318-1202

Docker Desktop 安装成功后,如果我尝试运行它,它会失败并显示以下错误

System.InvalidOperationException:
Sequence contains no matching element
   at System.Linq.Enumerable.First[TSource](IEnumerable`1 source, Func`2 predicate)
   at Docker.Core.Pipe.NamedPipeClient.Send(String action, Object[] parameters)
   at Docker.WPF.BackendClient.Version()
   at Docker.WPF.BackendClient.CheckVersion()
   at Docker.WPF.BackendClient.CheckService(String action)
   at Docker.WPF.BackendClient.SendMessage(String action, Object[] parameters)
   at Docker.ApiServices.TaskQueuing.TaskQueue.<>c__DisplayClass18_0.<.ctor>b__1()
Run Code Online (Sandbox Code Playgroud)

我已确保未选中 vmcompute.exe 的 CFG Override,但它仍然不起作用。

注意:我使用的是 Surface Laptop,我的 ProgramData 位于 microSD 卡中(不在 SSD 上) ProgramData 已通过 mklink /XJ 命令转移到 D:

Rob*_*bin 6

经过多次尝试,我的解决方案如下,可以在这里找到(jagraj 的回答):https : //github.com/docker/for-win/issues/3597

  1. 打开“窗口安全”
  2. 打开“应用和浏览器控制”
  3. 点击底部的“漏洞利用保护设置”
  4. 切换到“程序设置”选项卡
  5. 在列表中找到“C:\WINDOWS\System32\vmcompute.exe”并展开
  6. 点击“编辑”
  7. 向下滚动到“代码流防护(CFG)”并取消选中“覆盖系统设置”
  8. 从powershell“net start vmcompute”启动vmcompute