前言
我在用docker安裝rocketmq時候,在安裝broker環節中總是出現安裝失敗,發現網上太多複製粘貼擾亂視聽,於是自己親測,總結如下內容。
拉取鏡像
docker pull foxiswho/rocketmq:server
docker pull foxiswho/rocketmq:broker
docker pull styletang/rocketmq-console-ng
使用鏡像
1、啓動server
docker run -d -p 9876:9876 --name rmqserver foxiswho/rocketmq:server
2、啓動broker
docker run -d -p 10911:10911 -p 10909:10909 --name rmqbroker \
-v `pwd`/conf/broker.conf:/etc/rocketmq/broker.conf \
-e "JAVA_OPT_EXT=-server -Xms128m -Xmx128m -Xmn128m" \
foxiswho/rocketmq:broker
broker.conf文件中加入:
# 配置nameserver的地址,broker需要上報狀態給nameserver
namesrvAddr = {內網地址}:9876
# 如果mq服務需要在外網使用則配成外網,需要在內網使用則配成內網地址
brokerIP1 = {外網地址}
3、啓動可視化頁面
docker run -d --name rmqconsole -p 8180:8080 --link rmqserver:namesrv\
-e "JAVA_OPTS=-Drocketmq.namesrv.addr=namesrv:9876\
-Dcom.rocketmq.sendMessageWithVIPChannel=false"\
-t styletang/rocketmq-console-ng
關於內外網地址獲取方法
1、外網地址就是虛擬機分配給系統的地址(我使用的是虛擬機)
2、內網的地址獲取
docker inspect -f '{{.Name}} - {{.NetworkSettings.IPAddress }}' $(docker ps -aq)
/rmqbroker - 172.17.0.3
/rmqconsole - 172.17.0.4
/rmqserver - 172.17.0.2 取此作爲內網地址
可視化頁面地址
http://192.168.189.141:8180/#/