【发布时间】:2017-02-09 12:50:36
【问题描述】:
用这个命令
php bin/console rabbitmq:consumer -w upload_picture
我有这个问题。
[ErrorException]
stream_socket_client(): unable to connect to tcp://localhost:5672 (Aucune
connexion n'a pu etre établie car l'ordinateur cible lÆa expressÚment
refusée.
所以我无法连接到服务器rabbitmq
config.yml
old_sound_rabbit_mq:
connections:
default:
host: 'localhost' # hostname and port of the rabbitmq server
port: 5672
user: 'guest'
password: 'guest'
vhost: '/'
lazy: true # a lazy connection avoids unnecessary connections to the broker on every request
connection_timeout: 3
read_write_timeout: 3
keepalive: false
heartbeat: 0
producers:
upload_picture:
connection: default # connects to the default connection configured above
exchange_options: {name: 'upload_picture', type: direct}
consumers:
upload_picture:
connection: default # connects to the default connection configured above
exchange_options: {name: 'upload_picture', type: direct}
queue_options: {name: 'upload_picture'}
callback: upload_picture_service # the UploadPictureConsumer defined below
【问题讨论】:
-
你的命令连接到localhost,如果你的5672端口不是宿主机上的容器发布的,就会失败。显示
docker port your_rabbitmq_container,这里是文档docs.docker.com/engine/reference/commandline/port -
在 rabbitmq 机器上,输入
netstat -a并确保它正在侦听该端口,而不仅仅是在 unix 套接字上。 -
列表中不存在5672端口(netstat -a)
-
with is command docker ps 7c01193b2f74 projecttest_queue "docker-entrypoint..." 24 小时前 Up 5 hours 4369/tcp, 5671/tcp, 25672/tcp, 0.0. 0.0:55672->5672/tcp, 0.0.0.0:32768->15672/tcp projecttest_queue_1
-
将 localhost 替换为容器的名称(从您的评论看来是 projecttest_queue)