开发者社区 > 云原生 > 消息队列 > 正文

RocketMQ在docker部署apache/rocketmq:5.1.0 怎么配置能外网连接?

RocketMQ在docker部署的时候 apache/rocketmq:5.1.0 怎么配置能外网连接?我在相同的配置情况下rocketmqinc/rocketmq :4.4.0 就能外网连接。

展开
收起
游客6poszk7nfmalm 2023-07-23 20:10:09 387 0
2 条回答
写回答
取消 提交回答
  • 要在Docker中部署Apache RocketMQ 5.1.0并使其能够进行外网连接,您需要进行以下配置:

    1. 修改broker.conf文件:在您的RocketMQ容器中,找到 conf/broker.conf 文件。编辑该文件,并将 brokerIP1 参数设置为您的Docker主机的公网IP地址。
    brokerIP1=your_public_ip
    
    1. 配置防火墙规则:确保您的Docker主机上的防火墙允许来自外部网络的RocketMQ流量通过。您需要打开以下端口:
    • NameServer监听端口(默认为9876)
    • Broker监听端口(默认为10911)

    具体步骤和命令可能因不同的操作系统和防火墙软件而有所不同。请参考您所使用操作系统和防火墙的相关文档,了解如何配置防火墙规则以允许外部访问。

    1. 暴露端口:在您运行RocketMQ容器时,使用 -p 参数将RocketMQ的NameServer和Broker端口映射到宿主机的对应端口。这样,您可以通过宿主机的公网IP地址和映射的端口来进行外部访问。

    例如,可以使用以下命令来运行RocketMQ容器:

    docker run -d -p 9876:9876 -p 10911:10911 apache/rocketmq:5.1.0
    
    2023-07-28 09:51:41
    赞同 展开评论 打赏
  • 看看4.4是咋个设置的网络模式,5.1.0 可以设置local模式看看。
    在dashboard上看到的IP应该是broker心跳给namesrv的ip,默认取的当前ip,好像也不是brokerip1.
    设置local模式应该可以取到那个公网ip 。
    ——此回答整理自钉群“群2-Apache RocketMQ 中国开发者钉钉群”

    2023-07-23 20:24:09
    赞同 展开评论 打赏

多个子产品线联合打造金融级高可用消息服务以及对物联网的原生支持,覆盖多行业。

相关产品

  • 云消息队列 MQ
  • 热门讨论

    热门文章

    相关电子书

    更多
    RocketMQ Client-GO 介绍 立即下载
    RocketMQ Prometheus Exporter 打造定制化 DevOps 平台 立即下载
    基于 RocketMQ Prometheus Exporter 打造定制化 DevOps 平台 立即下载