我在虚拟框中创建了两个boot2docker实例:
"boot2docker-vm“{8674bb87-b7ba-4179-9a09-c779611b1d9a}
{53ffd6d6-2fc4-4c4f-b34e-c2f8dd87dd40}
他们使用不同的boot2docker.iso和不同的配置文件。
第一个vm是默认的,所以如果在虚拟机之外运行“docker映像”,它将默认使用第一个vm。
但是我如何访问第二个boot2docker "boot2docker-work",我知道'boot2docker ssh‘工作,但是我想在虚拟机之外运行boot2docker命令。
我试图为第二个vm设置DOCKER_HOST和ca,cert,但是有以下错误:试图连接发生错误: Get https://192.168.59.110:2376/v1.19/containers/json:拨号tcp 192.168.59.110:2376: i/o超时
有什么想法吗?
发布于 2015-07-08 14:03:55
好吧,我找到解决办法了。
创建VM时,它将使用IP连接到vboxnet,如果ip为192.168.59.103,则会将192.168.59添加到路由表中。
192.168.58 link#10 UC 3 0 vboxnet
然后,如果启动vm,192.168.58.103将添加到具有正确网关的路由表中:
192.168.58.103 8:0:27:1e:d1:24 UHLWI 0 3120 vboxnet 210
但是,如果我们使用ip 192.168.58.104创建另一个vm,那么它将没有一个正确的网关:
192.168.58.104 link#10 UC 3 0 vboxnet
这使得vm无法工作。
所以我的解决方案是,使用192.168.59,或者192.168.60,然后所有的问题都消失了。
但有谁能解释一下这种路由机制呢?
https://stackoverflow.com/questions/31277436
复制相似问题