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

大神们,Apache RocketMQ docker中broker的环境变量哪些可以设置的?文档没写

大神们,Apache RocketMQ docker中broker的环境变量哪些可以设置的?文档没写

展开
收起
真的很搞笑 2023-06-28 17:25:16 250 0
4 条回答
写回答
取消 提交回答
  • 在Docker中,您可以通过以下两种方式为RocketMQ Broker设置环境变量:

    1. 在制作镜像时,通过ENV命令为镜像增加环境变量。在容器启动时使用该环境变量。
    2. 在容器启动时候,通过参数配置环境变量,如果与镜像中有重复的环境变量,会覆盖。
    2023-06-30 07:47:48
    赞同 展开评论 打赏
  • Apache RocketMQ 的 Broker Docker 镜像中可以设置的环境变量如下:

    JAVA_OPTS:Java 运行时参数,比如设置 JVM 内存大小等。

    NAMESRV_ADDR:NameServer 的地址,多个地址之间用分号 ; 分隔。例如:NAMESRV_ADDR=192.168.1.1:9876;192.168.1.2:9876

    BROKER_CLUSTER_NAME:Broker 集群名称。

    BROKER_NAME:Broker 节点名称。

    BROKER_ID:Broker 节点 ID。

    BROKER_IP1:Broker 节点的 IP 地址。

    BROKER_IP2:Broker 节点的另一个 IP 地址。

    BROKER_PORT:Broker 节点的监听端口。

    BROKER_DATA_PATH:Broker 存储数据的目录路径。

    BROKER_LOG_PATH:Broker 存储日志的目录路径。

    BROKER_CONFIG_PATH:Broker 配置文件路径。

    BROKER_DELETE_WHEN:Broker 存储的消息文件过期时间,默认为 72 小时。

    BROKER_FILE_RESERVED_TIME:Broker 存储的消息文件保留时间,默认为 48 小时。

    BROKER_FLUSH_DISK_TYPE:Broker 刷盘方式,默认为异步刷盘(ASYNC_FLUSH)。

    2023-06-29 22:03:25
    赞同 展开评论 打赏
  • 公众号:网络技术联盟站,InfoQ签约作者,阿里云社区签约作者,华为云 云享专家,BOSS直聘 创作王者,腾讯课堂创作领航员,博客+论坛:https://www.wljslmz.cn,工程师导航:https://www.wljslmz.com

    您好,Apache RocketMQ Docker中的Broker环境变量可以通过以下方式进行配置:

    • 在制作镜像时,通过ENV命令为镜像增加环境变量。在容器启动时使用该环境变量。
    • 在容器启动时,通过参数配置环境变量,如果与镜像中有重复的环境变量,会覆盖。

    具体来说,您可以在Dockerfile中添加以下内容:

    ENV ROCKETMQ_NAMESRV_ADDR=127.0.0.1:9876
    ENV ROCKETMQ_BROKER_ADDR=127.0.0.1:10911
    ENV ROCKETMQ_CONSUMER_GROUP=my-group
    ENV ROCKETMQ_PRODUCER_GROUP=my-group
    
    2023-06-29 08:12:05
    赞同 展开评论 打赏
  • 在 Apache RocketMQ 的 Docker 中,您可以设置以下环境变量来配置 Broker 的相关参数:

    • NAMESRV_ADDR:指定 NameServer 的地址。格式为 ip:port;ip:port,多个地址之间使用分号分隔。

    • BROKER_NAME:指定 Broker 的名称。

    • BROKER_ID:指定 Broker 的唯一 ID。

    • BROKER_IP1BROKER_IP2BROKER_IP3...:指定 Broker 的 IP 地址。根据实际情况进行设置,可以设置多个 IP 地址以提供高可用性。

    • BROKER_PORT:指定 Broker 监听的端口号。

    • BROKER_CLUSTER_NAME:指定 Broker 所属的集群名称。

    • BROKER_DELETE_WHEN:指定消息存储时间达到多少小时后被删除,默认为 48 小时。

    • BROKER_FILE_RETENTION_HOURS:指定消息文件保留时间,默认为 72 小时。

    • BROKER_FLUSH_DISK_TYPE:指定刷盘策略类型,默认为 "ASYNC_FLUSH"。

    • BROKER_FLUSH_INTERVAL:指定刷盘间隔时间,默认为 500 毫秒。

    • BROKER_CONSUME_THREAD_NUMS:指定消费者线程数,默认为 64。

    • BROKER_PERSISTENCE_THREAD_NUMS:指定持久化线程数,默认为 32。

    这些环境变量可以通过在运行 Docker 容器时使用 -e 参数进行设置。例如:

    docker run -d --name rocketmq-broker -p 10911:10911 -p 10909:10909 -e NAMESRV_ADDR=127.0.0.1:9876 -e BROKER_NAME=mybroker apache/rocketmq-broker:4.9.1
    

    请注意,以上列出的环境变量是一些常用的配置项,实际上 RocketMQ Broker 支持更多的配置选项和环境变量。如果您需要更详细的配置,请参考官方文档或相关的源码和配置文件。

    2023-06-28 18:03:57
    赞同 展开评论 打赏

涵盖 RocketMQ、Kafka、RabbitMQ、MQTT、轻量消息队列(原MNS) 的消息队列产品体系,全系产品 Serverless 化。RocketMQ 一站式学习:https://rocketmq.io/

相关产品

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

    热门文章

    相关电子书

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