【Docker】win10上修改docker的镜像文件存储位置(九)- 通过WSL2修改

文章目录

1.版本信息

  • window 10 v1909 小版本号
    在这里插入图片描述
  • Docker Desktop Installer v20.10.0( 细致版本看下图)在这里插入图片描述

2.安装过程所遇

  1. 官网下载的docker.exe直接安装即可,安装中间选项,直接安装的C盘下(C:\Program Files\Docker),由上面的docker info可看出,docker的默认路径(/var/lib/docker)跟linux一样了,与window的之前docker版本不一样了,这是为什么?
  2. 点击安装的docker icon,启动桌面,会提示安装WSL(这是啥,这里就不赘述了),安装提示安装即可,版本是WSL2,如果不安装,启动不了docker engine服务,当然也可以不使用这个,如下图,设置中有选项,可尝试,让后再修改试试看,不过我建议按默认的来,官网推荐;
    在这里插入图片描述
  3. 目前的docker版本依附WSL来进行文件映射,所以,我们需要通过wsl来修改docker的文件映射路径,可理解为文件挂载

3.使用WSL修改docker文件存储位置

WSL2模式下docker-desktop-data vm磁盘映像通常位于以下位置:
C:\Users\jayzhen\AppData\Local\Docker\wsl\data\ext4.vhdx
按照以下说明将其重新定位到其他驱动器/目录,并保留所有现有的Docker数据。

  • 首先,右键单击Docker Desktop图标关闭Docker桌面,然后选择退出Docker桌面,然后,打开命令提示符:
wsl --list -v
  • 您应该能够看到,确保两个状态都已停止。
    在这里插入图片描述

默认情况下,Docker Desktop for Window会创建如下两个发行版(distro) C:\Users\jayzhen\AppData\Local\Docker\wsl
docker-desktop (对应distro/ext4.vhdx)
docker-desktop-data (对应data/ext4.vhdx)
按官网提示:vhdx文件最大支持256G,超出大小会有异常。当然我的C盘也没那么大官方说明

  • docker-desktop-data导出到文件中(备份image及相关文件),使用如下命令
wsl --export docker-desktop-data "D:\\docker-desktop-data.tar"
  • 从wsl取消注册docker-desktop-data,请注意C:\Users\jayzhen\AppData\Local\Docker\wsl\data\ext4.vhdx文件将被自动删除。
wsl --unregister docker-desktop-data
  • 将导出的docker-desktop-data再导入回wsl,并设置我们想要的路径,即新的镜像及各种docker使用的文件的挂载目录,我这里设置到D:\\docker\\wsl
wsl --import docker-desktop-data "D:\\docker\\wsl" "D:\\docker-desktop-data.tar" --version 2
  • 命令执行完毕,就能再目录下看到文件了,这时次启动Docker Desktop,可以正常工作了

4.如何验证有效

修改前记录 C:\Users\jayzhen\AppData\Local\Docker\wsl目录文件大小(大于2G)
修改后,在记录其文件大小(小于200M)和D:\\docker\\wsl(1.47G),然后docker pull任意一个镜像(我下载了nginx、tomcat),再看C:\Users\jayzhen\AppData\Local\Docker\wsl目录无变化,而D:\\docker\\wsl增大到2.26G
在这里插入图片描述

最后,如果在验证后一切没有问题,则可以删除D:\\docker-desktop-data.tar文件,记住可不是ext4.vhdx文件,这可是重要文件

5.参考资料

  1. 什么是Linux的Windows子系统?
  2. 扩展WSL 2虚拟硬盘的大小
  3. 在WSL 2上开始使用Docker远程容器
  4. Docker桌面WSL 2后端简介
  5. 移动Docker wsl文件
  6. 运行Windows和WSL时Docker卷位于何处?
  7. 在Windows 10 Home中使用WSL2时如何更改docker映像的位置?
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值