前言

Docker是一个非常好用的容器引擎, 使我们部署环境速度大幅度提升。但是windows版本的docker-desktop默认安装路径是C盘,这时候就有一个非常让人头疼的问题 -【C盘储存空间严重不足】。下面主要记录一下怎么解决这一个问题~

原缓存路径

C:\Users${用户文件}\AppData\Local\Docker

解决方案

目前在网上查到的解决方案有两种,可以完美的解决Docker镜像缓存的问题~ 对强迫症简直是福利。

方案一

Docker-desktop在初始化的时候会创建两个wsl子系统,这两个系统文件会默认保存在上述缓存路径下
image.png

  • docker-desktop:保存的是程序
  • docker-desktop-data: 保存的镜像

在关闭docker-desktop的情况下再进行操作。

通过wsl命令将这两个子系统进行迁移

  • 备份命令
wsl --export docker-desktop docker-desktop.tar
wsl --export docker-desktop-data docker-desktop-data.tar
  • 删除命令
wsl --unregister docker-desktop
wsl --unregister docker-desktop-data
  • 导入命令
wsl --import docker-desktop D:\docker\docker-desktop docker-desktop.tar
wsl --import docker-desktop-data D:\docker\docker-desktop-data docker-desktop-data.tar

++注意: 划重点, 两个子系统文件使用的目录限制不能为同一个目录.++
完成以上操作启动docker-desktop下载镜像文件就不会保存到C盘啦。

方案二

对docker默认缓存路径创建联接指向别的磁盘文件。

  • 首先关闭docker-desktop以及所有运行的镜像文件
  • 将C:\Users${用户文件}\AppData\Local\Docker文件移动到需要的磁盘里
  • 使用命令设置联接
  • 联接建立成功启动即可
cmd /c mklink /J Docker F:\Repository\Docker

注意: 是在原缓存文件Docker的根目录下通过powershell执行命令,由于powershell不支持mklink的指令,所以需要在前面增加 cmd /c.

image.png

参考:https://blog.csdn.net/fleaxin/article/details/109812090

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐