目录
3.创建conf、store、logs文件夹,启动broker
1.拉取镜像文件
docker pull rocketmqinc/rocketmq:4.4.0
2.创建logs文件夹,启动nameserver
docker run -u root -d -p 9876:9876\
-v /home/zhanggw/rocketmq/logs:/root/logs\
--name rmqnamesrv\
-e "MAX_POSSIBLE_HEAP=100000000"\
rocketmqinc/rocketmq:4.4.0 sh mqnamesrv
注意:rocketmq:4.4.0使用docker运行时必须指定使用root,否则默认使用rocketmq账户,无法记录日志wenj

其它:
mqnamesrv指定参数
usage: mqnamesrv [-c <arg>] [-h] [-n <arg>] [-p]
-c,--configFile <arg> Name server config properties file
-h,--help Print help
-n,--namesrvAddr <arg> Name server address list, eg: 192.168.0.1:9876;192.168.0.2:9876
-p,--printConfigItem Print all config item
mqnamesrv各项默认配置:
[root@34e564f7c52a bin]# ./mqnamesrv -p
OpenJDK 64-Bit Server VM warning: Using the DefNew young collector with the CMS collector is deprecated and will likely be removed in a future release
OpenJDK 64-Bit Server VM warning: UseCMSCompactAtFullCollection is deprecated and will likely be removed in a future release.
08:38:08.130 [main] INFO RocketmqNamesrvConsole - rocketmqHome=/opt/rocketmq-4.4.0
08:38:08.132 [main] INFO RocketmqNamesrvConsole - kvConfigPath=/root/namesrv/kvConfig.json
08:38:08.132 [main] INFO RocketmqNamesrvConsole - configStorePath=/root/namesrv/namesrv.properties
08:38:08.133 [main] INFO RocketmqNamesrvConsole - productEnvName=center
08:38:08.133 [main] INFO RocketmqNamesrvConsole - clusterTest=false
08:38:08.133 [main] INFO RocketmqNamesrvConsole - orderMessageEnable=false
08:38:08.133 [main] INFO RocketmqNamesrvConsole - listenPort=9876
08:38:08.133 [main] INFO RocketmqNamesrvConsole - serverWorkerThreads=8
08:38:08.133 [main] INFO RocketmqNamesrvConsole - serverCallbackExecutorThreads=0
08:38:08.133 [main] INFO RocketmqNamesrvConsole - serverSelectorThreads=3
08:38:08.133 [main] INFO RocketmqNamesrvConsole - serverOnewaySemaphoreValue=256
08:38:08.133 [main] INFO RocketmqNamesrvConsole - serverAsyncSemaphoreValue=64
08:38:08.133 [main] INFO RocketmqNamesrvConsole - serverChannelMaxIdleTimeSeconds=120
08:38:08.133 [main] INFO RocketmqNamesrvConsole - serverSocketSndBufSize=65535
08:38:08.133 [main] INFO RocketmqNamesrvConsole - serverSocketRcvBufSize=65535
08:38:08.133 [main] INFO RocketmqNamesrvConsole - serverPooledByteBufAllocatorEnable=true
08:38:08.133 [main] INFO RocketmqNamesrvConsole - useEpollNativeSelector=false
namesrv配置文件namesrv.properties,可以通过-c 指定
##
# 名称:NamesrvConfig.rocketmqHome <String>
# 默认值:(通过 sh mqnamesrv 设置 ROCKETMQ_HOME 环境变量,在源程序中获取环境变量得
# 到的目录)
# 描述:RocketMQ 主目录
# 建议:不主动配置
##
rocketmqHome = /opt/rocketmq-4.4.0
##
# 名称:NamesrvConfig.kvConfigPath <String>
# 默认值:$user.home/namesrv/kvConfig.json <在源程序中获取用户环境变量后生成>
# 描述:kv 配置文件路径,包含顺序消息主题的配置信息
# 建议:启用顺序消息时配置
##
#kvConfigPath = /root/namesrv/kvConfig.json
##
# 名称:NamesrvConfig.configStorePath <String>
# 默认值:$user.home/namesrv/namesrv.properties <在源程序中获取用户环境变量后生成>
# 描述:NameServer 配置文件路径
# 建议:启动时通过 -c 指定
##
#configStorePath = /root/namesrv/namesrv.properties
##
# 名称:NamesrvConfig.clusterTest <boolean>
# 默认值:false <在源程序中初始化字段时指定>
# 描述:是否开启集群测试
# 建议:不主动配置
##
clusterTest = false
##
# 名称:NamesrvConfig.orderMessageEnable <boolean>
# 默认值:false <在源程序中初始化字段时指定>
# 描述:是否支持顺序消息

本文详细介绍了如何使用Docker部署RocketMQ消息中间件,包括拉取镜像、配置Nameserver与Broker、安装控制台的过程。同时,提供了Java代码示例,展示如何发送与接收消息,适用于初学者快速上手。
最低0.47元/天 解锁文章
2764





