curl https://registry.hub.docker.com/v1/repositories/foxiswho/rocketmq/tags | tr -d '[[]" ]' | tr '}' 'n' | awk -F: -v image='foxiswho/rocketmq' '{if(NR!=NF && $3 != ""){printf("%s:%sn",image,$3)}}'
创建并启动NameServer容器
docker run -d -p 9876:9876 --name rmqserver foxiswho/rocketmq:server-4.7.0创建并启动broker容器
- 创建broker配置文件
[root@localhost conf]# pwd /docker/rocketmq/conf [root@localhost conf]# ls broker.conf [root@localhost conf]# vim broker.conf #将一下配置保存 brokerClusterName = DefaultCluster brokerName = broker-a brokerId = 0 deleteWhen = 04 fileReservedTime = 48 brokerRole = ASYNC_MASTER flushDiskType = ASYNC_FLUSH brokerIP1 = 192.168.134.130 #本机地址
- 执行下面的命令创建并启动broker容器
docker run -d -p 10911:10911 -p 10909:10909 --name rmqbroker --link rmqserver:namesrv -e "NAMESRV_ADDR=namesrv:9876" -e "JAVA_OPTS=-Duser.home=/opt" -e "JAVA_OPT_EXT=-server -Xms128m -Xmx128m" -v /docker/rocketmq/conf/broker.conf:/etc/rocketmq/broker.conf foxiswho/rocketmq:broker-4.7.0测试
- 发送消息
进入容器:docker exec -it 4e26026518c7 bash
执行:[rocketmq@4e26026518c7 bin]$ ./tools.sh org.apache.rocketmq.example.quickstart.Producer
-接受消息
再开一个窗口进入容器:docker exec -it 4e26026518c7 bash
执行:[rocketmq@4e26026518c7 bin]$ ./tools.sh org.apache.rocketmq.example.quickstart.Comsumer
测试结果省略
mqshutdown namesrv mqshutdown broker控制台的安装
- 构建rockermq-console容器
docker run --name rmqconsole --link rmqserver:namesrv -e "JAVA_OPTS=-Drocketmq.namesrv.addr=rmqserver:9876 -Dcom.rocketmq.sendMessageWithVIPChannel=false" -p 8180:8080 -t styletang/rocketmq-console-ng
参数说明:
- 访问控制台



