我正在尝试使用Weave覆盖网络将不同主机上的两个Docker容器连接起来。在第一台主机上,我可以毫无问题地连接到Weave网络。但是,在另一台主机上,每当我尝试使用该网络运行容器时,或者稍后尝试将现有容器连接到该网络时,命令行都会冻结。

这些是我正在使用的命令:

docker run -id --name test_container --net=weave test_img

和:
docker run -id --name test_container test_img
weave attach test_container

在这两种情况下,命令行都处于阻塞状态,并且ctrl+c无法停止命令。当关闭终端并打开一个新终端时,执行docker ps -a时可以看到该容器。但是,当我要启动它时,同样的事情再次发生。

有任何想法吗?

最佳答案

原来,我没有将第二台主机上的Weave路由器指向第一台主机的正确IP。运行weave status时,我看到连接失败。使用正确的IP地址运行weave connect <IP>可以解决此问题。仍然很奇怪,但是运行Docker容器会阻塞命令行,而不仅仅是返回错误消息。

关于networking - 无法将Docker容器连接到Weave网络,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37487960/

10-12 15:43