docker都会习惯性保持版本最新,每次提示update都会去更新,然而在2022年4月份某次更新后,启动失败, win10操作系统,报错日志如下:
System.InvalidOperationException: Failed to set version to docker-desktop: exit code: 11 stdout: stderr: at Docker.ApiServices.WSL2.WslShortLivedCommandResult.LogAndThrowIfUnexpectedExitCode(String prefix, ILogger log, Int32 expectedExitCode) in C:workspacesPR-16841srcgithub.comdockerpinatawinsrcDocker.ApiServicesWSL2WslCommand.cs:line 146 at Docker.Engines.WSL2.WSL2Provisioning.d__8.MoveNext() in C:workspacesPR-16841srcgithub.comdockerpinatawinsrcDocker.EnginesWSL2WSL2Provisioning.cs:line 81 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Docker.Engines.WSL2.LinuxWSL2Engine. d__28.MoveNext() in C:workspacesPR-16841srcgithub.comdockerpinatawinsrcDocker.EnginesWSL2LinuxWSL2Engine.cs:line 179 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Docker.ApiServices.StateMachines.TaskExtensions. d__0.MoveNext() in C:workspacesPR-16841srcgithub.comdockerpinatawinsrcDocker.ApiServicesStateMachinesTaskExtensions.cs:line 29 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Docker.ApiServices.StateMachines.StartTransition. d__5.MoveNext() in C:workspacesPR-16841srcgithub.comdockerpinatawinsrcDocker.ApiServicesStateMachinesStartTransition.cs:line 67 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at Docker.ApiServices.StateMachines.StartTransition. d__5.MoveNext() in C:workspacesPR-16841srcgithub.comdockerpinatawinsrcDocker.ApiServicesStateMachinesStartTransition.cs:line 92
踩坑
百度搜索引擎无一例外都是引导到CSDN,所提供解决方法去重后就3个
方案1、在cmd执行 netsh winsock reset 重启docker
方案2、下载NoLsp,下载的文件放到C:WindowsSystem32下,(以管理员的身份)cmd执行NoLsp.exe c:windowssystem32wsl.exe
方案3、下载旧版本docker
逐一尝试后,依旧报同样的错。尝试去GITHUB上看,翻了多个issue,CSDN的方案大抵是搬运自这里
看到一个用户和我报错一致,重装系统解决了问题。
又尝试使用 troubleshoot/get support,无法连接。
经过查了2小时未得到有效的解决办法,准备重装系统的时候,尝试了一个新方案,问题得到解决,没有精准定位到哪一步解决了问题,说下整体操作。
1、下载新版docker (截至2022/6/13最新版本4.9.0)
2、卸载原有UBUNTU,在MSstore 重装了ubuntu 20.04 LTS
3、执行wsl --update 更新linux内核,并重启 win10(执行该命令需要把接受产品更新进行勾选)
4、安装docker,启动报错,使用 clean /purge data,全选进行删除,等待结束。(图是后截屏的,未启动时设置无法选取)
等待删除完成后重启docker,启动画面如下
感谢Ryan_j 大佬的评论给了一个新的方向,解决了燃眉之急
愿CSDN多一些思考,多一些亲身尝试,少些搬运抄袭。



