1

我正在尝试连接这 2 个 docker 容器:

nsqd:https ://registry.hub.docker.com/u/mreiferson/nsqlookupd/ nsqlookupd:https ://registry.hub.docker.com/u/mreiferson/nsqlookupd/

这些是 nsqd 和 nsqlookupd 的官方 docker 容器。

问题是当我在 nsqd 中创建主题时,我在 nsqlookupd 中看不到该主题。

IE

curl -d 'hello world 1' 'http://172.17.42.1:4151/put?topic=test'  // to create the test topic

curl http://172.17.42.1:4151/stats  // shows that I have messages with topic = test

curl http://172.17.42.1:4161/topics  // ??? shows that I have no topic.

我像这样启动我的 2 个容器(172.17.42.1 是我的 docker 主机 IP):

docker run --name lookupd -p 4160:4160 -p 4161:4161 mreiferson/nsqlookupd 

docker run  --name nsqd -p 4150:4150 -p 4151:4151 -e BROADCAST_ADDRESS=172.17.42.1:4160 mreiferson/nsqd

我显然错误地连接了 2 个容器。我将如何正确连接它们?

4

2 回答 2

2

我最终创建了自己的 nsqd docker 容器来解决我的问题:https ://github.com/rexposadas/nsqd

于 2014-06-27T21:24:55.010 回答
0

将 nsqd 容器链接到 nslookupd 容器并告诉它在哪里可以找到 nslookupd。对你来说,这应该是这样的:

docker run -d --name nsqd -p 4150:4150 -p 4151:4151 --link nslookupd:nslookupd mreiferson/nsqd --lookupd-tcp-address=nslookupd:4160 --broadcast-address=172.17.42.1

另外,您为什么使用 mreiferson 而不是 nsqio/* 图像?

于 2014-09-29T23:51:41.080 回答