天天看点

【部署】【二】制作 RocketMQ Console 控制台 Docker 镜像环境准备和最终目标下载源码并编译( 本地 )准备文件( Linux 主机 )生成 Docker 镜像启动容器测试通过浏览器查看控制台

查看 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

主页

【部署】【二】制作 RocketMQ Console 控制台 Docker 镜像环境准备和最终目标下载源码并编译( 本地 )准备文件( Linux 主机 )生成 Docker 镜像启动容器测试通过浏览器查看控制台

集群

【部署】【二】制作 RocketMQ Console 控制台 Docker 镜像环境准备和最终目标下载源码并编译( 本地 )准备文件( Linux 主机 )生成 Docker 镜像启动容器测试通过浏览器查看控制台

能显示集群下的一个 Broker ,说明运行成功