Windows 上修改 docker 的镜像文件存储位置(修改 WSL 文件映射)

news2024/11/22 15:08:51

Windows 上修改 docker 的镜像文件存储位置(修改 WSL 文件映射)

  • 1、起因
  • 2、修改
    • 2.1 关闭 Docker Desktop
    • 2.2 备份镜像
    • 2.3 WSL 取消注册 docker-desktop-data
    • 2.4 镜像数据导回 WSL 并挂载到新路径
  • 3、验证

1、起因

一开始在 Windows 上安装了 docker 后,它默认是把镜像拉取保存到 C:\Users\<你当前用户>\AppData\Local\Docker\wsl\data\ 路径的 ext4.vhdx 文件下,当拉取的镜像越来越大时,C 盘比较小的同学就 hold 不住了,怎么在 Windows 上修改 docker 的镜像文件存储位置也就变的迫在眉睫。

2、修改

点击安装 Docker Desktop 后启动,会提示安装 WSL,如果不安装,启动不了 docker engine 服务。

因为目前的 docker 依附 WSL 来进行文件映射,所以我们需要通过 wsl 来修改 docker 的文件映射(可理解为文件挂载)路径就行了。

现在我们安装的都是WSL2,WSL2 模式下 docker-desktop-data 磁盘映像通常位于以下位置: C:\Users\<你当前用户名>\AppData\Local\Docker\wsl\data\ext4.vhdx

按照以下步骤将其重新定位到其他驱动器 or 目录,并保留所有现有的 Docker 数据。

2.1 关闭 Docker Desktop

首先,在任务栏右下角右键单击 Docker Desktop 图标关闭 Docker 桌面,选择退出 Docker 桌面,等一会 Docker 图标没了之后,就证明 Docker 完全关闭了,然后,打开命令提示符:

wsl --list -v

我们就能能够看到,确保两个状态都已停止。

在这里插入图片描述

默认情况下,Docker Desktop for Window 会创建如下两个发行版(distro)
C:\Users<你当前用户名>\AppData\Local\Docker\wsl
docker-desktop (对应distro/ext4.vhdx)
docker-desktop-data (对应data/ext4.vhdx)
按官方说明提示:vhdx文件最大支持256G,超出大小会有异常。

2.2 备份镜像

将 docker-desktop-data 导出到文件中(备份 image 及相关文件),我是把他保存到 D 盘下,用的如下命令,你们可以根据自己需要修改路径:

wsl --export docker-desktop-data "D:\\docker-desktop-data.tar"

2.3 WSL 取消注册 docker-desktop-data

从 wsl 取消注册 docker-desktop-data,需注意 C:\Users\<你当前用户名>\AppData\Local\Docker\wsl\data\ext4.vhdx 文件将被自动删除,命令如下:

wsl --unregister docker-desktop-data

2.4 镜像数据导回 WSL 并挂载到新路径

将导出的 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,可以正常工作了。

3、验证

修改前记录 C:\Users\<你当前用户名>\AppData\Local\Docker\wsl 目录文件大小,修改后再看一下该路径文件大小,可以看到变化(前提是还未修改前有拉取镜像,且镜像比较大),然后 docker pull 任意一个镜像(我下载了Ubuntu),再看 C:\Users\<你当前用户名>\AppData\Local\Docker\wsl 目录无变化,而 D:\\docker\\wsl (你修改的镜像挂载目录)增大。

最后,如果在验证后一切没有问题,则可以删除 D:\docker-desktop-data.tar (前面备份的镜像文件),记住可不是 ext4.vhdx 文件,这可是重要文件,删除了 Docker Desktop 就打不开了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/31038.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

运动用品品牌排行榜,2022年值得买的运动用品推荐

如今&#xff0c;人们的生活节奏越来越快&#xff0c;工作和生活压力大。因此&#xff0c;人们越来越重视体育运动&#xff0c;通过体育运动达到放松和锻炼身体的目的&#xff0c;运动装备也就跟着火热起来。无论是进行室内或户外活动&#xff0c;选一套合适的运动装备是很有必…

【java】java 类型安全 与 unchecked warning

1.概述 1.1. What does type-safety mean? 我的总结: 从概念上来说,Type Safety,最本质上,就是对于内存(Memory)的“正确访问”。假如说,在内存的一块区域上存储着一个String类型的对象;按照正常的逻辑,这块内存区域就应该被当作String来进行处理,这就是所谓的“…

MASA Framework 事件总线 - 进程内事件总线

概述 事件总线是一种事件发布/订阅结构&#xff0c;通过发布订阅模式可以解耦不同架构层级&#xff0c;同样它也可以来解决业务之间的耦合&#xff0c;它有以下优点 松耦合横切关注点可测试性事件驱动 发布订阅模式 通过下图我们可以快速了解发布订阅模式的本质 订阅者将自…

nginx简单学习笔记

目录什么是nginx&#xff1f;反向代理负载均衡动静分离安装nginxNginx常用命令nginx.conf配置文件1、位置2 nginx配置文件组成Nginx 反向代理实例Nginx 配置实例-负载均衡nginx 分配服务器策略Nginx配置实例-动静分离nginx原理什么是nginx&#xff1f; Nginx是一个高性能的 HT…

【附源码】计算机毕业设计JAVA医院住院综合服务管理系统

【附源码】计算机毕业设计JAVA医院住院综合服务管理系统 目运行 环境项配置&#xff1a; Jdk1.8 Tomcat8.5 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; …

第五站:操作符(第一幕)

操作符相关的知识&#xff0c;在我们初识C语言&#xff08;第三幕&#xff09;这篇文章中其实已经讲到过了。但是那一次讲解仅仅只是一些粗略的知识讲解&#xff0c;我们在那里面已经提到过&#xff0c;后续会专门超级详细的讲解操作符的知识&#xff0c;我们现在就来攻下操作符…

2022亚太数学杯数学建模竞赛B题(思路、程序......)

&#x1f352;&#x1f352;&#x1f352;欢迎关注&#x1f308;&#x1f308;&#x1f308; &#x1f4dd;个人主页&#xff1a;我爱Matlab &#x1f44d;点赞➕评论➕收藏 养成习惯&#xff08;一键三连&#xff09;&#x1f33b;&#x1f33b;&#x1f33b; &#x1f34c;希…

C妈妈加密返回值逆向分析

内容仅供参考学习 目标 网址&#xff1a;https://www.chanmama.com/promotionDetail/0IHXaJ1y7lRNaZyiTsKa6vHtvaZDe6zy/live 直播记录接口返回值加密 分析 打开调试工具&#xff0c;先截获一个请求&#xff1a; 进入Initiator 一般情况通过这边进入函数中挨着…

HTML CSS游戏官网网页模板 大学生游戏介绍网站毕业设计 DW游戏主题网页模板下载 游戏娱乐网页成品代码

&#x1f389;精彩专栏推荐&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb; ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 &#x1f482; 作者主页: 【主页——&#x1f680;获取更多优质源码】 &#x1f393; web前端期末大作业…

#边学边记 必修5 高项:对人管理 第2章 项目沟通管理和干系人管理 2-5 项目干系人管理

导学 重要知识点&#xff1a;干系人分析&#xff0c;干系人分类、分析技术、项目干系人管理过程的输入、工具与技术、输出等。下午的案例题可能会涉及与项目干系人管理知识点相关的简答题。 干系人管理的过程 1. 识别干系人 识别能够影响项目决策、活动或结果的个人、群体或…

Lysozyme C (46-61) (chicken),62982-31-4

AMPs是由相对较小的分子组成的异质基团&#xff0c;通常含有不到100个氨基酸。 它们最初是在20世纪60年代由Zeya和Spitznagel 在多形核白细胞溶酶体中描述的。 迄今为止&#xff0c;已在数据库&#xff08;如数据库&#xff09;中 确定和登记了2600多个AMP。 它们是由几乎所有的…

Mysql语法三:表的约束和表与表之间的关系以及高级查询

目录 1.表的约束 1.1:约束类型 1.2&#xff1a;NULL约束 1.3&#xff1a;UNIQUE&#xff1a;唯一约束 1.4&#xff1a;DEFAULT &#xff1a;默认值约束 1.5&#xff1a;PRIMARY KEY&#xff1a;主键约束 1.5.1:联合主键 1.5.2&#xff1a;自增主键 1.6&#xff1a;FORE…

HOOPS 3DGS技术概述

1.什么是HOOPS 3D图像系统 HOOPS 3D图形系统&#xff08;HOOPS/3DGS&#xff09;是一款高性能3D图形工具包&#xff0c;适用于开发人员构建Windows和UNIX操作系统以及Internet应用程序。HOOPS/3DGS高度优化的数据结构和算法大大简化了基于CAD/CAM/CAE、科学可视化和地理信息系…

Flutter的三棵树

一、Flutter常见的家族成员 Widget常见的家族成员 Element常见的家族成员 Render常见的家族成员 二、示例代码对应的Flutter Inspector树 示例代码&#xff1a;MyApp->MyHomePage->ErrorWidget&#xff0c;包含了StatelessWidget、StatefulWidget、LeafRenderObjectWid…

远程医疗解决方案-最新全套文件

远程医疗解决方案-最新全套文件一、建设背景二、建设思路三、建设方案四、获取 - 远程医疗全套最新解决方案合集一、建设背景 针对当今社会医疗资源分布不均、看病难看病贵、医学单位间学术交流和研讨开展困难&#xff0c;华为公司推出了远程医疗解决方案&#xff0c;实现远程…

springboot(13):spring 过滤器和拦截器的区别

目录过滤器和拦截器的区别过滤器的使用1.使用spring boot提供的FilterRegistrationBean2.使用原生servlet注解定义Filter拦截器的使用在前面我们讲过拦截器怎么使用&#xff0c;参考&#xff1a;拦截器 和拦截器有个差不多的叫过滤器。 过滤器和拦截器的区别 首先看一下下面…

1535. 找出数组游戏的赢家

给你一个由 不同 整数组成的整数数组 arr 和一个整数 k 。 每回合游戏都在数组的前两个元素&#xff08;即 arr[0] 和 arr[1] &#xff09;之间进行。比较 arr[0] 与 arr[1] 的大小&#xff0c;较大的整数将会取得这一回合的胜利并保留在位置 0 &#xff0c;较小的整数移至数组…

[附源码]计算机毕业设计JAVA竞价拍卖系统

[附源码]计算机毕业设计JAVA竞价拍卖系统 项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis M…

Spring 源码阅读 04:BeanFactory 初始化

本篇要阅读的是 BeanFactory 初始化的部分&#xff0c;也就是 refresh 方法中的这一行方法调用&#xff1a; // Tell the subclass to refresh the internal bean factory. // 这里会调用模版方法&#xff0c;通过子类的实现&#xff0c;初始化 BeanFactory 并解析 XML 配置 C…

企业快速构建可落地的IT服务管理体系的五大关键点

随着数字化转型的发展&#xff0c;IT运维管理环境日益复杂&#xff0c;对管理的要求也随之增高如何提升运维效率&#xff0c;快速落地做好运维管理&#xff0c;搭建一套IT服务管理必不可少&#xff0c;以往我们也对IT服务管理框架进行过总结&#xff0c;当下&#xff0c;面对很…