RocketMQ在docker部署的时候 apache/rocketmq:5.1.0 怎么配置能外网连接?我在相同的配置情况下rocketmqinc/rocketmq :4.4.0 就能外网连接。
要在Docker中部署Apache RocketMQ 5.1.0并使其能够进行外网连接,您需要进行以下配置:
broker.conf
文件:在您的RocketMQ容器中,找到 conf/broker.conf
文件。编辑该文件,并将 brokerIP1
参数设置为您的Docker主机的公网IP地址。brokerIP1=your_public_ip
具体步骤和命令可能因不同的操作系统和防火墙软件而有所不同。请参考您所使用操作系统和防火墙的相关文档,了解如何配置防火墙规则以允许外部访问。
-p
参数将RocketMQ的NameServer和Broker端口映射到宿主机的对应端口。这样,您可以通过宿主机的公网IP地址和映射的端口来进行外部访问。例如,可以使用以下命令来运行RocketMQ容器:
docker run -d -p 9876:9876 -p 10911:10911 apache/rocketmq:5.1.0
看看4.4是咋个设置的网络模式,5.1.0 可以设置local模式看看。
在dashboard上看到的IP应该是broker心跳给namesrv的ip,默认取的当前ip,好像也不是brokerip1.
设置local模式应该可以取到那个公网ip 。
——此回答整理自钉群“群2-Apache RocketMQ 中国开发者钉钉群”
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
涵盖 RocketMQ、Kafka、RabbitMQ、MQTT、轻量消息队列(原MNS) 的消息队列产品体系,全系产品 Serverless 化。RocketMQ 一站式学习:https://rocketmq.io/