我在hyper-v中运行我的docker容器。为了访问Windows共享,我构建了一个自定义boot2docker.iso。现在我想使用这个自定义iso映像创建docker主机。
我试图让docker-machine使用我的本地boot2docker.iso文件,通过使用以下命令指定--hyperv-boot2docker-url,但在控制台上出错:
docker-machine create --driver hyperv --hyperv-virtual-switch "External Virtual Switch" --hyperv-boot2docker-url file:///D:/docker/boot2docker.iso b2d
Running pre-create checks...
Creating machine...
(b2d) Downloading C:\Users\ivisne\.docker\machine\cache\boot2docker.iso from file:///D:/docker/boot2docker.iso...
Error creating machine: Error in driver during machine creation: open /D:/docker/boot2docker.iso: The filename, directory name, or volume label syntax is incorrect.
什么是正确的语法或这应该工作?
你可以做一个“肮脏的把戏”。您可以删除为iso --hyperv-boot2docker-url file:///D:/docker/boot2docker.iso
指定URL的参数:
覆盖boot2docker.iso文件。在你的%userprofile%\.docker\machine\cache
文件夹下。然后通过拔下网络电缆切断您的互联网访问。然后启动命令。
通常,如果您没有为iso指定任何内容,它会检查文件的校验和。它与原版不同,所以它会尝试下载一个新的,因为你没有互联网访问权限,它将你的自定义boot2docker.iso文件从你的%userprofile%\.docker\machine\cache
文件夹复制到%userprofile%\.docker\machine\machines\default
,它将用于创建机器。
希望能帮助到你。
有三个反斜杠,但有两个就足够了:
docker-machine create --driver hyperv --hyperv-virtual-switch "External Virtual Switch" --hyperv-boot2docker-url file://D:/docker/boot2docker.iso b2d
docker-machine create --driver hyperv --hyperv-virtual-switch“Ext Switch”--hyperv-boot2docker-url file:// C:/Users/User_name/.docker/machine/machines/dev/boot2docker.iso machine_name 这对我有用
只需在D文件之前使用两个反斜杠就像这个docker-machine创建--driver hyperv --hyperv-virtual-switch“外部虚拟交换机”--hyperv-boot2docker-url file:// D:/docker/boot2docker.iso b2d