启动Docker Desktop时提示“unexpected wsl error”

今天打开Docker Desktop,提示“unexpected wsl error”,部分提示信息:

Some WSL system related access rights are not set correctly. This sometimes happens after waking the computer or not being connected to your domain/active directory. Please try to reboot the computer. If not sufficient, WSL may need to be reinstalled fully. As a last resort, try to uninstall/reinstall Docker Desktop.

正确的解决方法

打开CMD 或 PowerShell,运行下面的命令,

netsh winsock reset

该命令的大意是,通过重置winsock的上下文,来屏蔽LSP对wsl.exe的干扰,具体可以参考 WSL/issues/4177 中的讨论

执行此命令后,我的问题解决了,以下的内容记录我折腾的过程。

无头苍蝇

这些日子一直在摸索chatGPT、Midjourney,Docker都有好些日子没有启动了;这突如其来的故障,一点头绪也没有;就只能一步一步的尝试回述。

1、卸载windows的更新包

今天正好自动更新了windows,为了排除此影响,卸载今日的所有更新;结果没卵用;

2、更新WSL

根据提示信息,建议重新安装WSL;重装可能 没必要,更新一下可以了

wsl --update

结果没卵用;

3、更新Docker

更新一下Docker吧,结果更新的时候,发生了莫名奇妙的事;更新程序执行完成后,我的docker程序也没有了。。。只好重新下载最新版的Docker Desktop,重新安装;结果也还是没卵用;

总结

只要思想不滑坡,方法总比困难多;这是今天早上邻居朋友对我讲的;没想到通过这个问题应验了;

不过,也从侧面说明,技术是个命题很广的概念;

只有活到老学到老,放弃焦虑,从容前进!