shr*_*ivb 59 windows docker docker-machine docker-toolbox
我在Windows 7上使用docker工具箱来运行docker.(docker version 1.9.1)
事实证明,docker机器在C:\ Users\username\.docker\machine\machines\default创建其VM.当我提交图像时,此位置的VM大小会膨胀.自从它的Windows,无法承受C盘上的豪华空间.
有什么办法可以改变默认机器的位置吗?
Raj*_*ani 52
这对我在Windows 7上的效果非常好:
Docker Toolbox现在将在MACHINE_STORAGE_PATH指向的位置创建所有文件.
更新:
请注意,使用新存储路径创建新VM并不理想,因为Docker Quickstart Terminal脚本似乎不适用于任何未命名为"default"的内容.
如果你已经在C:盘中安装了一个虚拟机,那么最简单的方法就是转到Oracle VirtualBox并删除"默认"虚拟机,卸载Docker Toolbox,删除C:\ Users\<用户名>. docker \,然后按照上面的3个步骤操作.
注意:可能不需要卸载和重新安装Docker Toolbox.但是没有它我没有测试过.
更新
要同时移动Docker证书,请将DOCKER_CERT_PATH变量设置为指向新驱动器的路径.感谢@Nutle提示.
小智 33
您可以将.docker目录移动到另一个驱动器并创建一个连接点.
请注意,常规快捷方式不起作用.
例如:
将.docker目录从中移动C:\Users\username到D:\
并运行:
C:\Users\username>mklink /j .docker D:\.docker
Junction created for .docker <<===>> D:\.docker
Run Code Online (Sandbox Code Playgroud)
Von*_*onC 28
自2015年起,现在(2017年6月)Hyper-V,允许您定义VHDX文件的位置:
请参阅Docker for Windows 1.13.0,2017-01-19(稳定版):
可以移动包含图像和非主机安装卷的VHDX文件(使用UI中的"高级"选项卡)
这将修改%APPDATA%\Docker\settings.json一行:
"MobyVhdPathOverride":"C:\\Users\\Public\\Documents\\Hyper-V\\New folder\\MobyLinuxVM.vhdx"
Run Code Online (Sandbox Code Playgroud)
见这个线程更多.
原始答案
目前2015年,docker-machine强制使用%USERPROFILE%:
见libmachine/mcnutils/utils.go#L17-L25
如问题499所述:
与此同时,用户如何能够指定
.docker/machine/*文件的存储位置?您可以通过
--storage-path在命令行上指定或使用环境变量MACHINE_STORAGE_PATH.
(你可以看到它在PR 1941中实现)
刚
-s <path>在Mac上尝试' ,它似乎工作正常.
可能不太明显的是路径选项在命令之前.
运行"docker-machine -s /Volumes/other/location' create --driver=virtualbox"在另一个位置创建了一个新的VirtualBox图像.
ron*_*190 18
只需使用VirtualBox图形界面重定位文件disk.vmdk:
C:\Users\{myUsername}\.docker\machine\machines\default\disk.vmdk到另一个文件夹,说F:\docker-image\.VirtualBox,选择defaultVM并打开Settings.Storage,选择当前disk.vmdk并释放它(或删除它).Choose Virtual Hard Disk File...并搜索复制的文件F:\docker-image\File,选择Virtual Media Manager...并释放或删除旧的disk.vmdk4.,它完成了!Pro*_*s08 13
运行docker quick start terminal时,请输入以下两个命令.
我想你的新位置是"D:\ docker",你的新机器名是"docker1"
export MACHINE_STORAGE_PATH=D:\\docker
docker-machine create --driver=virtualbox docker1
Run Code Online (Sandbox Code Playgroud)
这应该会在新位置创建一个具有指定名称的新计算机.
我无法使MACHINE_STORAGE_PATH环境变量方法起作用.首次初始化机器时,它一直抱怨丢失证书.仍然在Windows 7上,所以必须使用docker-toolbox.
我解决了这个问题:
| 归档时间: |
|
| 查看次数: |
51721 次 |
| 最近记录: |