在Docker中运行NSQ

我正在尝试使用docker docker-compose启动NSQ。

 nsqlookupd: image: nsqio/nsqlookupd ports: - "4160:4160" - "4161:4161" nsqd: image: nsqio/nsqd ports: - "4150" - "4151" links: - nsqlookupd:nsqlookupd command: -lookupd-tcp-address=nsqlookupd:4160 nsqadmin: image: nsqio/nsqadmin ports: - "4171:4171" links: - nsqlookupd:nsqlookupd command: -lookupd-http-address=nsqlookupd:4161 

容器运行良好,我甚至可以通过networking浏览器访问pipe理面板,但是不能连接到nsqd:

 ~/D/t/nsq % boot2docker ip 192.168.59.103 ~/D/t/nsq % curl -d 'hello world 1' 'http://192.168.59.103:4150/put?topic=test' curl: (7) Failed to connect to 192.168.59.103 port 4150: Connection refused ~/D/t/nsq % 

有任何想法吗?

两件事情:
1)您的撰写文件中的nsqd条目应该正确显示端口:
ports: - "4150:4150" - "4151:4151"

2)HTTP接口的端口是4151所以试试
curl -d 'hello world 1' 'http://192.168.59.103:4151/put?topic=test'