M1使用docker部署rocketmq单机版

本篇仅简单讲述如何使用docker搭建单机版rocketmq,想在mac M1环境中构建rocketmq的小伙伴儿看过来哦

一.环境介绍

以下为本人部署时的环境介绍

  • 基础环境:mac M1
  • 本地docker版本:20.10.6 (注:docker版本没那么多说道,不用太在意)

二.相关镜像编译

由于M1是arm架构,docker hub中的rocketmq 和 rocketmq-console-ng控制台都需要自己编译镜像

1. 编译rocketmq镜像

我已编译好一版,可以直接拿来用[candice0630/rocketmq:5.0.0-alpine]

cd image-build
sh build-image.sh RMQ-VERSION BASE-IMAGE
(我执行的:sh build-image.sh 4.8.0 alpine )
  • 上一步成功后运行 docker images


    image.png

2.编译rocketmq-console-ng镜像

我已编译好一版,可以直接拿来用[candice0630/rocketmq-console-ng:2.0]

  • 先down代码:git clone https://github.com/apache/rocketmq-externals.git
  • 代码下载完成后先进入rocketmq-console目录
  • 执行 mvn clean package -Dmaven.test.skip=true 会在./target目录下生成一个jar包
  • 将jar包copy到./src/main/docker,然后 进入该目录执行 docker build -t rocketmq-console-ng:2.0 .
image.png
  • 然后就坐等编译成功就好啦

!!重点强调:正常情况下只要执行(mvn clean package -Dmaven.test.skip=true docker:build)命令就可以编译docker镜像,但是我失败了😭 jar包编译成功,但是打docker镜像报错,所以我分别执行两步骤!!

3.broker.conf配置

由于咱们是docker构建服务,我在使用第三方rocketmq-client包创建生产者时总是使用docker分配的内网ip进行连接,因连接不通,所以我们需要修改broker配置,使其用本地ip进行连接。具体配置如下:


image.png

三.docker-compose配置

version: '3'
services:
  namesrv:
    image: apacherocketmq/rocketmq:4.8.0-alpine
    container_name: rmqnamesrv
    ports:
      - 9876:9876
    command: sh mqnamesrv
  broker:
    image: apacherocketmq/rocketmq:4.8.0-alpine //这儿是自己编译的镜像
    container_name: rmqbroker
    ports:
      - 10909:10909
      - 10911:10911
      - 10912:10912
    volumes:
    //这儿将本地的broker.conf配置文件挂在到容器中
      - '本机broker.conf目录'/broker.conf:/home/rocketmq/rocketmq-4.8.0/conf/broker.conf
    command: sh mqbroker -n namesrv:9876 -c /home/rocketmq/rocketmq-4.8.0/conf/broker.conf
    depends_on:
      - namesrv
  mqconsole:
    image: candice0630/rocketmq-console-ng:2.0 //这儿是自己编译的ng镜像
    container_name: rmqconsole
    ports:
      - 19876:8080
    environment:
      JAVA_OPTS: -Drocketmq.config.namesrvAddr=namesrv:9876 -Drocketmq.config.isVIPChannel=false
    depends_on:
      - namesrv

四.运行

使用docker-compose执行第三部配置好的yml文件
eg:docker-compose -f rocketmq.yml up -d

然后我就成功啦!!


image.png

再访问localhost:19876 rocketmq控制台进行简单测试

五.总结

rocketmq目前本人还在学习阶段,对docker了解也较浅,所以目前先简单介绍学习rocketmq的第一步 本地部署。希望此篇文章可以让小伙伴儿们避免一些坑😜

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,047评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,807评论 3 386
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,501评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,839评论 1 285
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,951评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,117评论 1 291
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,188评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,929评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,372评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,679评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,837评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,536评论 4 335
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,168评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,886评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,129评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,665评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,739评论 2 351

推荐阅读更多精彩内容