在Windows 10 Pro上更改Docker本机映像位置
这不是一个复制品 我正在Windows 10 Pro上使用docker native版本1.12.1-stable(内部版本:7135),启用了Hyper-V。 因此docker没有运行VirtualBox,我也没有文件夹C:\Users\username\.docker 我想移动docker的图像、缓存。。。到我的辅助驱动器D:\ 我想我应该编辑Docker守护程序配置 我试图添加在Windows 10 Pro上更改Docker本机映像位置,docker,windows-10,Docker,Windows 10,这不是一个复制品 我正在Windows 10 Pro上使用docker native版本1.12.1-stable(内部版本:7135),启用了Hyper-V。 因此docker没有运行VirtualBox,我也没有文件夹C:\Users\username\.docker 我想移动docker的图像、缓存。。。到我的辅助驱动器D:\ 我想我应该编辑Docker守护程序配置 我试图添加“图形”:/D/docker“。Docker启动正确,但由于错误,我无法提取任何图像 打开/D/docker/t
“图形”:/D/docker“
。Docker启动正确,但由于错误,我无法提取任何图像
打开/D/docker/tmp/GetImageBlob135686954:没有这样的文件或目录
如何告诉docker使用另一个路径存储其图像等?我找到了一个解决方案
Windows上的Docker native在Hyper-V虚拟机中运行
移动现有docker虚拟机
我必须将docker使用的VM移动到所需的位置。
我使用Hyper-V manager的GUI完成了这项工作。
docker的虚拟机称为MobyLinux虚拟机
- 右键单击MobyLinux虚拟机
- 选择移动
- 选择所需位置
SET-VMHOST–computername–virtualharddiskpath'D:\Hyper-V_虚拟硬盘'
SET-VMHOST–computername–virtualmachinepath'D:\Hyper-V_VMs'
编辑Docker守护程序配置并使用“数据根”:“D:\\Docker”
而不是“图形”:/D/Docker”
这将把所有新下载的图像移动到
D:\docker
文件夹
对于旧的Docker版本,请使用graph“graph”:“D:\\Docker”
,“graph”已被弃用
有一种更简单的方法可以做到这一点: 转到Docker Settings>Advanced>更改“磁盘映像位置”并在出现提示时单击“应用”。Docker engine将关闭虚拟机并为您将其移动到新位置
警告:不得压缩新位置。如果是这样,Docker将不会向您显示任何错误,只是不会更改位置。这些步骤对我都不起作用。重新启动或Docker重新启动后,它将移回原始路径。对我有用的是使用 停止docker引擎 在新位置创建目标文件夹:
mkdir d:\docker\vhd
将文件夹虚拟硬盘
复制到目标文件夹
重命名(并备份)原始文件夹
rename “C:\Users\Public\Documents\Hyper-V\Virtual hard disks” “C:\Users\Public\Documents\Hyper-V\Virtual hard disks_backup”
创建硬符号链接(连接)
启动docker引擎docker版本:2.2.0.3(42716)
对于那些期待2020年的人。以下内容适用于Windows 10计算机:
现在您可以删除.tar文件了。我建议您查看Microsoft文档,是daemon.json文件允许更改设置“数据根”:“您使用的docker版本是什么?因为我没有AdvanceI我一直在尝试这一点,当我应用更改时,Docker只需将其设置回
c:\Users\Public\Documents
中的位置,默认情况下它需要所有内容。没有advanced选项在Docker Community v2.3.x中,单击路径将是Docker>Settings>Resources>Disk Image location
(您可能需要向下滚动以查看“磁盘映像位置”选项。为什么我没有看到这些高级选项(我在WSL 2上运行)每当我重新启动或重新启动docker时,它都会移回原始目录当移动vm后重新启动docker时,hdd位置会设置回默认位置,从而结束新的空虚拟hdd的创建。显然,所有现有docker内容都会消失。我的解决方法是在默认位置创建一个符号链接,指向导出d一。docker desktop 2.3.0.2中的屏幕没有这些配置,因此认为屏幕缺失,但向下滚动有帮助。根据使用的主题,滚动窗格可能很难看到…您应该在设置->常规中禁用“使用基于WSL 2的引擎”以查看高级选项。这里似乎没有人意识到docker已被禁用esktop for Windows有两种模式:Linux容器和Windows容器。(模式在托盘图标上下文菜单中设置。)如果您处于Windows容器模式,则磁盘映像位置选项不存在。我不在Windows容器中(因为它需要Windows Pro或Enterprise Build来启用它),但我的docker也没有这些配置。ps:docker版本:2.5.0.0这在Windows中是一个很好的解决方案,适用于
junction.exe "C:\Users\Public\Documents\Hyper-V\Virtual Hard Disks" "d:\docker\vhd\Virtual Hard Disks"
wsl --shutdown
wsl --export docker-desktop-data docker-desktop-data.tar
wsl --unregister docker-desktop-data
wsl --import docker-desktop-data D:\docker-new-repo\ docker-desktop-data.tar --version 2