使用--net = host时,如何将芹菜容器连接到rabbitmq容器?

时间:2017-02-27 21:06:48

标签: docker rabbitmq celery amqp

使用--net = host。

时,我无法将芹菜容器连接到rabbitmq容器

我用:

开始我的rabbitmq
docker run -d --rm --net=host --hostname=rabbitmq --name=rabbitmq -p 5672:5672 -p 15672:15672 -e RABBITMQ_DEFAULT_USER=donald -e RABBITMQ_DEFAULT_PASS=duck rabbitmq-mgnt

我的rabbitmq服务器在DNS中定义:

nslookup amqp
Server:     127.0.0.1
Address:    127.0.0.1#53

Name:   amqp.service.consul
Address: 10.68.32.180

我可以连接并验证凭据:

curl -i -u donald:duck http://amqp:15672/api/whoami
HTTP/1.1 200 OK
vary: Accept-Encoding, origin
Server: MochiWeb/1.1 WebMachine/1.10.0 (never breaks eye contact)
Date: Mon, 27 Feb 2017 20:51:12 GMT
Content-Type: application/json
Content-Length: 41
Cache-Control: no-cache

但我无法与芹菜联系:

docker run -d --rm --net=host --hostname=celery --name=celery celery
a52019dbe491926dc28937859c33503db211c79536256a5e8d652e72e6198639

docker logs celery

[2017-02-27 20:53:59,979: ERROR/MainProcess] consumer: Cannot connect to amqp://donald:**@amqp:5672//: [Errno -2] Name or service not known.
Trying again in 2.00 seconds...

我错过了什么吗?

亲切的问候 的Mathias

1 个答案:

答案 0 :(得分:0)

我找到了原因。 我忘了在芹菜容器的/etc/resolv.conf中添加localhost作为名称服务器。

感谢您的时间。 的Mathias