【发布时间】:2019-01-22 02:53:22
【问题描述】:
我在 Windows 10 上使用 Docker。在运行 docker pull kaggle/python 后,文件 MobyLinuxVM.vhdx 上升到近 30 GB,使我的 C 盘已满。如何安全地将这个文件移动到另一个驱动器?
【问题讨论】:
我在 Windows 10 上使用 Docker。在运行 docker pull kaggle/python 后,文件 MobyLinuxVM.vhdx 上升到近 30 GB,使我的 C 盘已满。如何安全地将这个文件移动到另一个驱动器?
【问题讨论】:
1 - 关闭 Docker
2 - 将 C:\path\to\file\Hyper-V\Virtual Hard Disks\MobyLinuxVM.vhdx 移动到 E:\Foo\Bar\MobyLinuxVM.vhdx(更大的驱动程序)
3 - 编辑 %APPDATA%\Docker\settings.json 以设置 "MobyVhdPathOverride": "E:\\Foo\\Bar\\MobyLinuxVM.vhdx"
4 - 启动 Docker
下次如果你想在运行 pull 命令时编辑 VM 默认位置,请以管理员身份打开 powershell 并运行以下命令:
Set-VMHost -VirtualHardDiskPath <the/new/path>
要检查您是否更改了路径,请运行以下命令:
(get-vmhost).VirtualHardDiskPath
【讨论】:
仅编辑 settings.json 对我不起作用。
我也做了第 1 步和第 2 步:
1 - 关闭 Docker
2 - 将 C:\path\to\file\Hyper-V\Virtual Hard Disks\MobyLinuxVM.vhdx 移动到 E:\Foo\Bar\MobyLinuxVM.vhdx(更大的驱动程序)
但在那之后我启动了 Hyper-V-Manager 并在操作面板上打开了 hyper-v 设置。在那里,我将C:\path\to\file\ 更改为E:\Foo\Bar\。
我不确定,但我认为这等于提到的 powershell 命令。
启动 Docker for Desktop 后,新位置在 docker 设置对话框的高级设置中可见。
提示:您还可以使用 Hyper-V 设置检查可以找到 MobyLinuxVM.vhdx 的路径。
第二个提示:如果C:\path\to\file\ 文件夹中有多个MobyLinuxVM.vhdx,则必须将它们全部复制到新位置。否则 Hyper-V 管理器无法访问它们。
【讨论】: