在Windows下更改docker镜像文件存储位置
docker镜像默认在目录 [ C:\用户\Administrator\AppData\Local\Docker\wsl\ ] 下,对-data子系统的操作视情况会比较耗时。
1.退出当前运行的dock desktop
右击运行中的docker软件图标 选择[Quit Docker Desktop] 退出软件,cmd中运行
C:\Users\xx>wsl --list -v NAME STATE VERS * docker-desktop Running 2 docker-desktop-data Running 2
version版本为2是因为步骤5设置了版本号为2
查看状态,状态为Stopped这代表已经停止
2.停止虚拟机
立即终止所有正在运行的发行版和 WSL 2 轻量级实用工具虚拟机
C:\Users\xx>wsl --shutdown C:\Users\xx>
3.导出映像文件
Docker Desktop 通过WSL2启动,会自动创建2个子系统,分别对应2个 vhdx 硬盘映像文件[docker-desktop-data与docker-desktop]
分别导出这俩个文件 **需要提前创建好目录 (例:H:\docker\wsl\distro和H:\docker\wsl\data) **
C:\Users\xx>wsl --export docker-desktop H:\docker\wsl\distro\docker-desktop.tar 正在导出,这可能需要几分钟时间。 操作成功完成。 C:\Users\xx>wsl --export docker-desktop-data H:\docker\wsl\data\docker-desktop-data.tar 正在导出,这可能需要几分钟时间。 操作成功完成。
4.注销原来的 Docker 镜像
销毁原来的docker镜像会删除源路径下的文件
C:\Users\xx>wsl --unregister docker-desktop-data 正在注销。 操作成功完成。 C:\Users\xx>wsl --unregister docker-desktop 正在注销。 操作成功完成。
5.从tar 文件,将导出的 Docker 镜像再导入回wsl,并设置挂载目录
命令格式为:
wsl --import <Distribution Name> <InstallLocation> <FileName>
导入docker-desktop-data,
–v 为设置版本号 不设置默认为1
C:\Users\xx>wsl --import docker-desktop-data H:\docker\wsl\data\ H:\docker\wsl\data\docker-desktop-data.tar --version 2 正在导入,这可能需要几分钟时间。 操作成功完成。
导入docker-desktop
C:\Users\xx>wsl --import docker-desktop H:\docker\wsl\distro\ H:\docker\wsl\distro\docker-desktop.tar --version 2 正在导入,这可能需要几分钟时间。 操作成功完成。
6 重启docker完成
导入完成确认镜像没问题后导出的.tar文件可以删除
7 测试下载一个新的image后文件夹变化情况
源修改位置后的文件夹大小
下载了一个新的images后文件夹大小
本文为崔凯原创文章,转载无需和我联系,但请注明来自冷暖自知一抹茶ckhttp://www.cksite.cn