2017-02-27 12 views
0

--net = hostを使用しているときに、rabbitmqコンテナにセロリコンテナを接続できません。私RabbitMQのサーバがDNSに定義されている--net = hostを使用すると、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を開始

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 

ドッカログセロリ

[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... 

は、私が何かを逃したことがありますか?

種類よろしく マティアス

+0

docker network create celery-rabbitmqを作成し、このネットワークで2つのコンテナを起動するのはなぜですか?あなたのrabbitmqはコンテナでなければなりません。 – user2915097

+0

私はそれが簡単なので、私は多くのカオテンダーとVMがお互いに話をしなければならないので、 - ネット=ホストを使います。 – mat

答えて

0

私はその理由を見つけました。 セロリコンテナの/etc/resolv.confにlocalhostをネームサーバとして追加するのを忘れてしまった。

お時間をいただきありがとうございます。 Mathias

関連する問題