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

问题描述

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

在上一次更新之前,我可以正常使用Docker,并且Docker守护进程会在启动时自动启动。

我通过打开Docker Desktop来启动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
  • Docker版本:19.03.13-beta2,构建ff3fbc9d55
  • Docker桌面版本2.3.0.4(46911)
  • Windows版本:Windows 10 Professional 1809

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

启用了Hyper-V,并且我还启用了BIOS中的虚拟化技术。

解决方法

docker desktop troubleshoot

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

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

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

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

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...