无法与docker容器内的主机接口服务连接

时间:2014-01-10 06:54:51

标签: redis vagrant docker

我是码头工人的新手,并且在流浪者宿主里面运行码头。

我正在主机接口上运行redis服务,它正在工作,我可以在主机接口上连接它,如localhost:6379。但是我无法在docker容器中连接它。

我正在运行docker container

docker run -t -i -p 80:80 apache-latest /bin/bash

我能够在docker0 IP 172.17.42.1和lx *** ip 10.0.3.1上的docker容器内ping主机接口。

我收到Connection拒绝[tcp://172.17.42.1:6379]错误。我尝试通过提供docker0和lx * ip来连接主机接口上的redis我收到连接拒绝错误。**

请帮助如何在docker容器中连接redis ...

1 个答案:

答案 0 :(得分:5)

您应该在redis配置文件中检查redis绑定到哪个端口:

# config file directive to check:
bind 127.0.0.1

您应该将其绑定到您可以ping的其中一个地址(f.e. 10.0.3.1)。

或者,您可以将redis套接字传递给容器:

# uncomment this section in config file:
unixsocket /lnk/redis.sock
unixsocketperm 755

然后,您可以使用-v /lnk:/lnk将带有套接字的目录传递给容器。您可以使用此套接字而不是IP地址与redis通信。

相关问题