如何让docker-machine使用本地boot2docker.iso

问题描述 投票:3回答:4

我在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.

什么是正确的语法或这应该工作?

boot2docker docker-machine
4个回答
0
投票

你可以做一个“肮脏的把戏”。您可以删除为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,它将用于创建机器。

希望能帮助到你。


1
投票

有三个反斜杠,但有两个就足够了:

docker-machine create --driver hyperv --hyperv-virtual-switch "External Virtual Switch" --hyperv-boot2docker-url file://D:/docker/boot2docker.iso b2d

0
投票

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 这对我有用


-1
投票

只需在D文件之前使用两个反斜杠就像这个docker-machine创建--driver hyperv --hyperv-virtual-switch“外部虚拟交换机”--hyperv-boot2docker-url file:// D:/docker/boot2docker.iso b2d

© www.soinside.com 2019 - 2024. All rights reserved.