Docker中RabbitMQ无法接收容器内服务的Stream消息问题
问题:Docker内部服务发送RabbitMQ Stream消息连接被拒,Classic消息正常
我在Docker中部署了RabbitMQ容器,另有一个服务向其发送Stream类型消息。该服务在Docker外部运行时一切正常,但打包为容器在Docker内运行时,发送Stream消息始终报错System.Net.Sockets.SocketException (111): Connection refused,发送Classic类型消息则可成功。
RabbitMQ容器Docker Compose配置
rabbitmq: container_name: rabbitmq image: rabbitmq:3-management environment: RABBITMQ_SERVER_ADDITIONAL_ERL_ARGS: -rabbitmq_stream advertised_host localhost RABBITMQ_DEFAULT_USER:"admin" RABBITMQ_DEFAULT_PASS:"admin" RABBITMQ_DEFAULT_VHOST:"application" ports: - 5672:5672 - 5552:5552 - 15672:15672 volumes: - ./conf/rabbitmq/rabbitmq.conf:/etc/rabbitmq/rabbitmq.conf - ./conf/rabbitmq/enabled_plugins:/etc/rabbitmq/enabled_plugins healthcheck: test: rabbitmq-diagnostics -q ping interval: 15s timeout: 15s retries: 5 env_file: - ./.local.env
./conf/rabbitmq/rabbitmq.conf配置
stream.listeners.tcp.1 = 5552 stream.tcp_listen_options.backlog = 4096 stream.tcp_listen_options.recbuf = 131072 stream.tcp_listen_options.sndbuf = 131072 stream.tcp_listen_options.keepalive = true stream.tcp_listen_options.nodelay = true stream.tcp_listen_options.exit_on_close = true stream.tcp_listen_options.send_timeout = 120
./conf/rabbitmq/enabled_plugins配置
[rabbitmq_management,rabbitmq_prometheus,rabbitmq_stream,rabbitmq_stream_management].
Docker内部服务的RabbitMQ配置
# RabbitMQ Host = "host.docker.internal", VirtualHost = "application", Port= 5672, StreamPort = 5552, User= "admin", Password = "admin", UseSSL = false
内容的提问来源于stack exchange,提问作者Allen
相关产品推荐
相关产品推荐

