1. 直接上官网,找到工程,clone 到本地,地址:https://github.com/apache/rocketmq-externals
克隆下来的工程目录如下:
2. 打开已克隆的工程,找到安装 rocketMQ 的脚本并运行。
官方操作说明:https://github.com/apache/rocketmq-externals/tree/master/rocketmq-docker
安装脚本所在路径: rocketmq-externals/rocketmq-docker/4.2.0
代码语言:javascript复制运行脚本:play-docker.sh
运行结果是把 mqnamesrv 、mqbroker 2 个容器服务都部署好了。
应该是 created 已创建状态,只需要 docker start 容器就可以了:
代码语言:javascript复制 docker start rmqnamesrv rmqbroker
注意先启动 名称服务:rmqnamesrv 。
3. 其实这样已经可以用了。只不过为了更方便管理和查看 MQ 消息。我们还可以部署一个 图形化界面控制台。
默认是全英文界面,右上角可选 切换为中文 。效果如下图:
给这个容器服务取名为:rmq-dashboard ,端口映射到 8088,启动容器命令为:
代码语言:javascript复制docker run -e "JAVA_OPTS=-Drocketmq.namesrv.addr=服务器IP:9876 -Dcom.rocketmq.sendMessageWithVIPChannel=false" -p 8088:8080 -d --name rmq-dashboard styletang/rocketmq-console-ng
运行后再查看容器,这个容器已经启动成功:
这样就可以访问到上面的图形化界面控制台了。
2018. 9. 18后记 :
过些天后发现 服务rmqbroker 自己停了,查日志提示为:
代码语言:javascript复制 Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
OpenJDK 64-Bit Server VM warning: If the number of processors is expected to increase from one, then you should configure the number of parallel GC threads appropriately using -XX:ParallelGCThreads=N
/opt/rocketmq-4.2.0/bin/runbroker.sh: line 80: 22 Killed
这是因为空间大小不足,重启 rmqbroker ,改小默认设置环境变量设置为: -server -Xms512m -Xmx512m -Xmn256m -XX:PermSize=128m -XX:MaxPermSize=128m
重启服务命令完整为:
代码语言:javascript复制docker run -d -p 10911:10911 -p 10909:10909 --name rmqbroker --link rmqnamesrv:namesrv -e "NAMESRV_ADDR=namesrv:9876" -e
"JAVA_OPT=${JAVA_OPT} -server -Xms512m -Xmx512m -Xmn256m -XX:PermSize=128m -XX:MaxPermSize=128m" apache/rocketmq-broker:4.2.0
再次查看服务运行正常。
参考:https://blog.csdn.net/jiangyu1013/article/details/81486374