檢視 RocketMQ 系列文章目錄
環境準備和最終目标
- 準備一:Linux 主機,筆者用的是阿裡雲 ECS,預裝 Centos7.4 Docker18.03.1-ce
- 準備二:基礎 java 8 Docker 鏡像
- 準備三:啟動 RocketMQ Dorker 容器,
制作 RocketMQ 的 Docker 鏡像參考
- 準備四:源碼為
項目,本機需預裝spring boot
java
環境maven``Git
- 目标一:通過浏覽器檢視控制台
下載下傳源碼并編譯( 本地 )
下載下傳位址
apache/rocketmq-externals
rocketmq-console
即為 RocketMQ 的控制台項目
修改配置檔案
将源碼
application.properties
替換為
application.yml
├── 項目根目錄
│ ├── src
│ │ ├── main
│ │ │ ├── resources
│ │ │ │ ├── application.yml
application.yml
spring:
application:
name: rocketmq-console
http:
encoding:
charset: UTF-8
enabled: true
force: true
server:
port: 8080
logging:
config: classpath:logback.xml
rocketmq:
config:
namesrvAddr: ${NAMESRV_ADDR}
isVIPChannel: false
dataPath: /tmp/rocketmq-console/data
enableDashBoardCollect: true
編譯
在項目根目錄下運作得到 jar 包
mvn clean package -Dmaven.test.skip=true
├── 項目根目錄
│ ├── target
│ │ ├── rocketmq-console-ng-1.0.0.jar
rocketmq-console-ng-1.0.0.jar
改名
rocketmq-console-1.0.0.jar
上傳 Linux 主機
準備檔案( Linux 主機 )
├── console
│ ├── rocketmq-console-ng-1.0.0.jar
│ ├── Dockerfile
console/Dockerfile
#
# Program:
# Make onesoso/rocketmq-console docker image
#
# History:
# 2019/01/23 v1.0
#
FROM onesoso/java:8
MAINTAINER Zhaofeng.L<[email protected]>
VOLUME /tmp
ADD rocketmq-console-1.0.0.jar app.jar
RUN sh -c 'touch /app.jar'
ENV JAVA_OPTS ""
ENV NAMESRV_ADDR ""
EXPOSE 8080
ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -jar /app.jar" ]
生成 Docker 鏡像
啟動容器
docker run \
--name console \
--network rocket_mq \
-p 8080:8080 \
-v /root/logs/rocketmq-console:/root/logs \
-v /tmp/rocketmq-console:/tmp \
-e "NAMESRV_ADDR=namesrv:9876" \
-e "JAVA_OPTS=-Xms512m -Xmx512m -Xmn256m" \
-d onesoso/rocketmq-console:1.0
測試通過浏覽器檢視控制台
浏覽器通路
http://xxx.xxx.xxx.xxx:8080
首頁
叢集
能顯示叢集下的一個 Broker ,說明運作成功