无法使用Node.js连接到我的Docker RabbitMQ

时间:2018-08-24 00:49:02

标签: node.js docker rabbitmq

我已经安装了RabbitMQ docker镜像并启动并运行。 我的Docker管理控制台也在端口8080上运行。

我使用new string [] {}

运行docker

我正在尝试运行以下节点代码;

docker run -d --hostname my-rabbit --name some-rabbit rabbitmq:3

但是,conn始终是未定义的。

我已经尝试过了

var amqp = require('amqplib/callback_api');

var connection = amqp.connect('amqp://localhost:5672',function(err,conn){
    console.log(conn); });

但它们都不起作用。

我的Rabbitmq经理说amqp正在听5672。

除了默认的来宾帐户外,我没有其他帐户。

我不在管理员模式下运行Visual Studio代码。

我得到的错误是;

  

错误:打开握手期间套接字突然关闭       在Socket.endWhileOpening(C:\ Users \ sgrieger \ Documents \ Development \ rabbitmq \ node_modules \ amqplib \ lib \ connection.js:259:17)       在emitNone(events.js:111:20)       在Socket.emit(events.js:208:7)       在endReadableNT(_stream_visible.js:1064:12)       在_combinedTickCallback(内部/进程/next_tick.js:138:11)       在process._tickCallback(internal / process / next_tick.js:180:9)

1 个答案:

答案 0 :(得分:4)

运行docker映像时,不会在主机上公开端口。您可以使用node_modules开关做到这一点:

-p