windows docker 更改镜像安装目录

 

目录

1. 问题

1.1 版本信息 

2. 修改Docker盘位操作

2.1. 停止docker

2.2. 备份已有的数据

2.3. 删除旧数据(数据未备份前请谨慎操作)

2.4. 导入数据到新盘

2.5. 启动Docker


 

 

START

1. 问题

Windows 中docker 默认程序安装到c盘,数据存放于 C:\Users\当前用户名\AppData\Local\Docker\wsl\data\ext4.vhdx 这样会导致C盘的空间 随着docker使用量越来越大。下方是亲测迁移数据的一种方式(该测试为迁移到F盘为例

1.1 版本信息 

 

2. 修改Docker盘位操作

2.1. 停止docker

右键点击docker图标停止docker运行(Quit Docker Desktop)

 

默认使用的为Windows PowerShell  (也可使用cmd)。查看停止情况:

 

 C:\Users\Administrator> wsl --list -vNAME                   STATE           VERSION
* docker-desktop         Stopped         2docker-desktop-data    Stopped         2

2.2. 备份已有的数据

 创建数据备份目录,当前备份目录为:F:\Docker\wsl\data\docker-desktop-data.tar。如出现以下提示,请自动去创建文件夹

为了以防万一,请先将容器存储成为镜像,导出成tar压缩包放到预先建好的数据目录下,防止崩溃,windows docker一旦崩溃,就会初始化,导致所有docker数据清空!!! 

执行以下命令进行数据导出:

PS C:\Users\Administrator> wsl --export docker-desktop-data "F:\Docker\wsl\data\docker-desktop-data.tar"
PS C:\Users\Administrator> dir F:\Docker\wsl\data\目录: F:\Docker\wsl\dataMode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----      2021/3/24   下午 7:10     6457722880 docker-desktop-data.tar

 

命令说明:将目前已有的数据备份到 F:\Docker\wsl\data\ 目录下,并命名为docker-desktop-data.tar

2.3. 删除旧数据(数据未备份前请谨慎操作)

 

C:\Users\Administrator> wsl --unregister docker-desktop-data
正在注销...
C:\Users\Administrator> wsl --list -vNAME              STATE           VERSION
* docker-desktop    Stopped         2

说明:解除当前的docker 数据虚拟盘映射,该命令执行后会删除原有C盘下的ext4.vhdx 

2.4. 导入数据到新盘

 

 C:\Users\Administrator> wsl --import docker-desktop-data "F:\Docker\wsl\data" "F:\Docker\wsl\data\docker-desktop-data.tar" --version 2C:\Users\Administrator> wsl --list -vNAME                   STATE           VERSION
* docker-desktop         Stopped         2docker-desktop-data    Stopped         2

 

说明:将备份数据导入到新的虚拟盘,且指定虚拟盘的存放路径为 F:\Docker\wsl\data,命令执行完毕后会在当前目录下会生成一个 ext4.vhdx 虚拟磁盘。如下所示:

2.5. 启动Docker

 END

最后备份的文件F:\Docker\wsl\data\docker-desktop-data.tar可根据情况删除

 注:特殊情况下docker中有些数据经过 docker system df 命令查看空间 并 经过docker system prune 释放空间后 ,物理磁盘还是没有释放的情况下进行删除  vhdx 文件

进行释放物理空间,直接在cmd 中  执行  wsl --unregister docker-desktop-data 命令即可。特别注意删除vhdx文件后docker会无法正常运行,需要重新生成 vhdx文件。如果已有docker-desktop-data.tar 可根据具体自身需求情况依据本文章章节重新执行生成docker 数据目录。


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部