win10 关于 wsl --set-version Ubuntu-20.04 2 转换失败
起因:
最开始使用Docker是WSL2 ,后来卸载过一次,然后又不知怎么的使用Hype-v方式安装了Docker,然后再进行了一些Docker配置设置。
昨天,我突然想进入卷的磁盘内放redis配置文件,反正就是进不去,前前后后找各种方法,google 百度等等,没一个行得通(日了狗了)。后来我发现,我电脑上Docker不是使用的WSL2的形式,不是安装了一个Ubuntu-20.04子系统,我艹。
接下来我卸载了Docker Hype-v 把Docker相关文件删个干净。
1 .安装WSL(其实我早已安装了)
2.安装Ubuntu-20.04
在CMD框内输入命令 wsl --list --online ,查看在线的 Linux 版本
我下载的是Ubuntu-20.04
命令 wsl --install -d Ubuntu-20.04
等待下载完成,安装,或者可以在windows商店中下载 Ubuntu
坑,如果安装失败,极有可能你执行了 “wsl --set-default-version 2” 将WSL 版本设置为 2 ,请改为 “wsl --set-default-version 1” 。
3.Docker Use The WSL 2 based engine 启动一直报错
例如 Failed to deploy distro docker-desktop to C:\Users\xxxx\AppData\Local\Docker\wsl\distro: :
这是因为安装的Ubuntu 不是使用了WSL 2
更新WSL 1至WSL 2 下载地址 https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi
参考地址 https://askubuntu.com/questions/1406388/how-to-fix-0x8027025a-error-when-installing-ubuntu-22-04-lts-on-wsl
将Ubuntu设置为wsl 2 ,直到我执行 wsl --set-version Ubuntu-20.04 2 一直失败,折腾到凌晨2点,第二天周日又接着弄,不知道为啥。
直到看到 https://github.com/microsoft/WSL/issues/5906 一位老兄的回答
然后,我去
找到我以前设置的 .wslconfig 文件,把这文件移出去了,然后再执行 wsl --set-version Ubuntu-20.04 2 ,成功了。唉.....
然后再重启Docker等待一会Docker会自动安装 docker-desktop-data 、docker-desktop
再然后,Docker就可以用了。
4.进入Docker的Volums路径
参考 https://stackoverflow.com/questions/43181654/locating-data-volumes-in-docker-desktop-windows
- For Docker version 20.10.+ :
\\wsl$\docker-desktop-data\data\docker\volumes
- For Docker Engine v19.03:
\\wsl$\docker-desktop-data\version-pack-data\community\docker\volumes\
到此,可以正常进入Docker的volums了
本文作者:youliCC