我正在尝试使用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/