在服务器容器中,dante-sever无法通过接口名称绑定ip

我最近尝试了docker,但是dante-server似乎不工作。

环境

os:gentoo x86_64
docker版本:

Client version: 1.1.0 Client API version: 1.13 Go version (client): go1.3 Git commit (client): 79812e3 Server version: 1.1.0 Server API version: 1.13 Go version (server): go1.3 Git commit (server): 79812000 

DockerFile定制的图像

 From centos:centos6 RUN yum install -y curl RUN rpm -Uvh http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm RUN rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6 RUN rpm --import http://apt.sw.be/RPM-GPG-KEY.dag.txt RUN echo -e "[nginx]\nname=nginx repo\nbaseurl=http://nginx.org/packages/centos/6/\$basearch/\ngpgcheck=0\nenabled=1" > /etc/yum.repos.d/nginx.repo RUN yum install -y nginx tinyproxy dante-server mysql-server 

启动容器

 sudo docker run -i \ --name="proxy" \ -p 14000:3128 \ -p 14001:4655 \ -v ${confdir}/tinyproxy.conf:/etc/tinyproxy.conf \ -v ${confdir}/dante-server.conf:/etc/sockd.conf \ -v ${dantelogdir}:/var/log/socks \ -v ${tinylogdir}:/var/log/tinyproxy \ devel/centos6 /bin/bash -c "tinyproxy -c /etc/tinyproxy.conf;sockd -f /etc/sockd.conf" 

sockdconfiguration

 internal: eth0 port = 4655 external: eth0 logoutput: /var/log/socks/sockd.log socksmethod: none user.privileged: root user.notprivileged: root user.libwrap: root client pass { from: 0.0.0.0/0 port 1-65535 to: 0.0.0.0/0 clientmethod: none # match all idented users that also are in passwordfile } socks pass { from: 0.0.0.0/0 to: 0.0.0.0/0 socksmethod: none } 

当我单独testing时,tinyproxy运作良好。 但丁服务器通过configurationtesting,但在启动过程中logging跟踪错误:

8月10日07:54:35(1407653675.105641)sockd [12]:警告:bindinternal():绑定的地址fe80 :: dc6f:d7ff:fe8f:fa59.46 55(地址#2/2)服务器监听失败:无法分配请求的地址Aug 10 07:54:35(1407653675.105650)sockd [12]:错误:serverinit():无法绑定内部地址:无法分配请求的地址
8月10日07:54:35(1407653675.105672)sockd [12]:警惕:母亲[1/1]:关机

错误似乎dante-server不能绑定到由接口名称** eth0 *parsing的IP。 任何帮助?

我一直在遇到同样的问题。 看起来像一个容器启动时,eth0的延迟> 1秒。 我所做的是为入口点添加一个睡眠/运行,如下所示:

 ENTRYPOINT sleep 2 && sockd 

它似乎解决了我所遇到的所有问题。