环境
windows10, wsl2, docker
总体流程
通过wsl把ubuntu,docker-desktop,docker-desktop-data打包移走,再重新导入。
具体步骤
- 查看并关闭wsl下的Ubuntu,docker-desktop,docker-desktop-data;
wsl -l -v //查看
wsl --shutdown //全部关闭
- 导出包;
wsl --export Ubuntu D:\WSL\ubuntu.tar //选择tar包要导出的路径,注意这里要提前建好文件夹
wsl --export Ubuntu D:\WSL\docker\docker-desktop.tar
wsl --export Ubuntu D:\WSL\docker\docker-desktop-data.tar
- 查看一下对应目录下是否有tar包,导出成功就注销原有的系统和数据;
wsl --unregister Ubuntu
wsl --unregister docker-desktop
wsl --unregister docker-desktop-data
- 重新导入;
wsl --import <导入的tar名称> <导入盘的路径> <.tar的路径> --version 2 (代表wsl2)
wsl --import Ubuntu D:\WSL\ D:\WSL\ubuntu.tar --version 2
wsl --import docker-desktop D:\WSL\docker D:\WSL\docker\docker-desktop.tar --version 2
wsl --import docker-desktop-data D:\WSL\docker D:\WSL\docker\docker-desktop-data.tar --version 2
附
以上完毕后,出现两个问题:
- Ubuntu和docker-desktop、docker-desktop-data无法同时通过
wsl -d
启动,也就是说要么启动Ubuntu,要么启动docker-desktop、docker-desktop-data,通过wsl -l -v
查看,存在stopped; - 无法打开docker;
解决方法:在C:\Users\17795\AppData\Roaming下找到Docker,给Docker重命名(达到删除+备份的目的),重启电脑后一切正常。