win10 的 docker-desktop 是默认基于 wsl 2
引擎的
可以看到 docker-desktop 的配置是选定了 wsl 2
,而且不能更改。
win 10 的 docker-desktop 在启动的时候,会启动两个 wsl 子系统
: docker-desktop
以及 docker-desktop-data
输入命令 wsl -l -v --all
可以看到这两个子系统
docker-desktop-data
是存放docker镜像,docker-desktop
是存放docker-desktop 数据,它们默认存放在 C:\Users${用户文件}\AppData\Local\Docker
需求:更改 docker-desktop 镜像存放路径
1. 停止 docker-desktop
2. 停止 wsl
wsl --shutdown
3, 导出子系统 docker-desktop 以及 docker-desktop-data 数据
wsl --export docker-desktop-data D:\data\docker\docker-desktop-data.tar
wsl --export docker-desktop D:\data\docker\docker-desktop.tar
可以看到 在 D:\data\docker
已存放了这两个子系统的 tar 包
4. 注销 子系统 docker-desktop 以及 docker-desktop-data
wsl --unregister docker-desktop
wsl --unregister docker-desktop-data
5. 将 docker-desktop 以及 docker-desktop-data 数据包导入到新的存储路径
先看一下导入命令:
wsl --help
跟着这个导入命令写就可以了
导入 docker-desktop-data
wsl --import docker-desktop-data D:\data\docker\docker-desktop-data D:\data\docker\docker-desktop-data.tar --version 2
导入 docker-desktop
wsl --import docker-desktop D:\data\docker\docker-desktop D:\data\docker\docker-desktop.tar --version 2
导入完成之后,可以看到新的存储文件夹里,分别生成了 ext4.vhdx
文件,
再重新查看下 wsl 的子系统
wsl -l -v --all
一定要确认 version 是否都是 2,不然 docker-desktop 启动不了。
6. 重启 docker-desktop
搞定。