Docker Desktop 无法在 Windows 10 上启动 docker 守护进程

Ale*_*sco 7 docker windows-10 docker-desktop

我目前在尝试在 Windows 上使用 Docker 时遇到问题。

上次更新前,可以正常使用Docker,启动时自动启动Docker deamon。

我通过打开 Docker 桌面来启动 Docker,我可以看到它正在启动,但它只是在那里挂了一段时间,然后自动停止,显示以下错误消息:

Cancellation token triggered before we finished reading from the stream.
   à HttpOverStream.ByLineReader.<ReadLineAsync>d__0.MoveNext()
--- Fin de la trace de la pile à partir de l'emplacement précédent au niveau duquel l'exception a été levée ---
   à System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   à System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   à System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   à HttpOverStream.Client.DialMessageHandler.<SendAsync>d__9.MoveNext()
--- Fin de la trace de la pile à partir de l'emplacement précédent au niveau duquel l'exception a été levée ---
   à System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   à System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   à System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   à Docker.Core.Logging.LoggingMessageHandler.<SendAsync>d__4.MoveNext() dans C:\workspaces\master\src\github.com\docker\pinata\win\src\Docker.Core\Logging\LoggingMessageHandler.cs:ligne 30
--- Fin de la trace de la pile à partir de l'emplacement précédent au niveau duquel l'exception a été levée ---
   à System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   à System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   à System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   à System.Net.Http.HttpClient.<FinishSendAsyncBuffered>d__58.MoveNext()
--- Fin de la trace de la pile à partir de l'emplacement précédent au niveau duquel l'exception a été levée ---
   à System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   à System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   à System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   à Docker.Core.BackendAPI.BackendAPIClient.<CreateHyperVVMAsync>d__10.MoveNext() dans C:\workspaces\master\src\github.com\docker\pinata\win\src\Docker.Core\BackendAPI\BackendAPIClient.cs:ligne 92
--- Fin de la trace de la pile à partir de l'emplacement précédent au niveau duquel l'exception a été levée ---
   à System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   à System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   à System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   à Docker.Engines.LinuxHyperVEngine.<DoStartAsync>d__14.MoveNext() dans C:\workspaces\master\src\github.com\docker\pinata\win\src\Docker.Desktop\Engines\LinuxHyperVEngine.cs:ligne 59
--- Fin de la trace de la pile à partir de l'emplacement précédent au niveau duquel l'exception a été levée ---
   à System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   à System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   à System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   à Docker.ApiServices.StateMachines.TaskExtensions.<WrapAsyncInCancellationException>d__0.MoveNext() dans C:\workspaces\master\src\github.com\docker\pinata\win\src\Docker.ApiServices\StateMachines\TaskExtensions.cs:ligne 20
--- Fin de la trace de la pile à partir de l'emplacement précédent au niveau duquel l'exception a été levée ---
   à System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   à System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   à System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   à Docker.ApiServices.StateMachines.StartTransition.<DoRunAsync>d__5.MoveNext() dans C:\workspaces\master\src\github.com\docker\pinata\win\src\Docker.ApiServices\StateMachines\StartTransition.cs:ligne 29
--- Fin de la trace de la pile à partir de l'emplacement précédent au niveau duquel l'exception a été levée ---
   à System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   à Docker.ApiServices.StateMachines.StartTransition.<DoRunAsync>d__5.MoveNext() dans C:\workspaces\master\src\github.com\docker\pinata\win\src\Docker.ApiServices\StateMachines\StartTransition.cs:ligne 74
--- Fin de la trace de la pile à partir de l'emplacement précédent au niveau duquel l'exception a été levée ---
   à System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   à System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   à System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   à Docker.ApiServices.StateMachines.EngineStateMachine.<StartAsync>d__14.MoveNext() dans C:\workspaces\master\src\github.com\docker\pinata\win\src\Docker.ApiServices\StateMachines\EngineStateMachine.cs:ligne 69
--- Fin de la trace de la pile à partir de l'emplacement précédent au niveau duquel l'exception a été levée ---
   à System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   à System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   à System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   à Docker.Engines.Engines.<RestartAsync>d__28.MoveNext() dans C:\workspaces\master\src\github.com\docker\pinata\win\src\Docker.Desktop\Engines\Engines.cs:ligne 272
Run Code Online (Sandbox Code Playgroud)
  • Docker 版本:19.03.13-beta2,构建 ff3fbc9d55
  • Docker 桌面版本 2.3.0.4 (46911)
  • Windows 版本:Windows 10 专业版 1809

我试过卸载和更新 Docker,但它不起作用。

Hyper-V 已启用,我还在 BIOS 中启用了虚拟化技术。

小智 1

docker 桌面故障排除

打开 Docker 桌面仪表板并按照以下步骤操作:

  1. 打开Troubleshoot页面
  2. 点击Clean / Purge data按钮
  3. 检查Hyper-V选项
  4. 点击Delete

发生此错误是因为创建了 Hyper-V 虚拟磁盘。

我使用 Docker Desktop v3.3.1,这对我有用。

  • 那么,对于“我无法打开 Docker”的问题,您的解决方案是“打开 Docker...”? (7认同)