参考:https://my.oschina.net/u/4407103/blog/4404664
重点摘要:
高版本win10,高版本docker,Docker Desktop默认使用WLS 2来运行,而不是以前的Hyper-V。
docker里面以前设置镜像位置的功能不见了,原因:启用WSL后,docker运行数据都在WSL发行版中,文件位置都只能由WSL管理!
安装docker后,docker会自动创建2个发行版,使用命令 wsl -l -v 查看
docker-desktop
docker-desktop-data
WSL发行版默认都是安装在C盘,在%LOCALAPPDATA%/Docker/wsl目录
docker的运行数据、镜像文件都存在%LOCALAPPDATA%/Docker/wsl/data/ext4.vhdx中,这对C盘空间紧张的人非常不友好。。。
WSL发行版迁移
首先关闭docker
关闭所有发行版:
wsl --shutdown
将docker-desktop-data导出到D:\SoftwareData\wsl\docker-desktop-data\docker-desktop-data.tar(注意,原有的docker images不会一起导出)
wsl --export docker-desktop-data D:\SoftwareData\wsl\docker-desktop-data\docker-desktop-data.tar
注销docker-desktop-data:
wsl --unregister docker-desktop-data
重新导入docker-desktop-data到要存放的文件夹:D:\SoftwareData\wsl\docker-desktop-data\:
wsl --import docker-desktop-data D:\SoftwareData\wsl\docker-desktop-data\ D:\SoftwareData\wsl\docker-desktop-data\docker-desktop-data.tar --version 2
只需要迁移docker-desktop-data一个发行版就行,另外一个不用管,它占用空间很小。
完成以上操作后,原来的%LOCALAPPDATA%/Docker/wsl/data/ext4.vhdx就迁移到新目录了