docker 安装 rocketmq 4.7.0

1、下载

直接克隆官方镜像制作文件

# git clone https://github.com/apache/rocketmq-docker.git

[root@localhost rocketmq-docker-master]# ls
CONTRIBUTING.md image-build LICENSE NOTICE product README.md stages stage.sh templates

[root@localhost rocketmq-docker-master]# cd image-build/
[root@localhost image-build]# ls
build-image-dashboard.sh build-image.sh Dockerfile-alpine Dockerfile-centos Dockerfile-centos-dashboard scripts update.sh

2、创建RocketMQ镜像

构建命令: sh build-image.sh RMQ-VERSION BASE-IMAGE
可选RMQ-VERSION  

例如: sh  build-image.sh 4.7.0 centos (or   alpine)

构建时间比较长

//构建完成

Successfully built 128108c2e50d

Successfully tagged apacherocketmq/rocketmq:4.7.1-alpine

[root@localhost image-build]# docker images |grep mq
apacherocketmq/rocketmq 4.7.0 28ce832d84bf 59 minutes ago 533MB

3、生成配置

[root@localhost rocketmq-docker-master]# sh stage.sh 4.7.0
Stage version = 4.7.0
mkdir /root/rocketmq-docker-master/stages/4.7.0
staged templates into folder /root/rocketmq-docker-master/stages/4.7.0

[root@localhost templates]# ls
data docker-compose kubernetes play-consumer.sh play-docker-compose.sh play-docker-dledger.sh play-docker.sh play-docker-tls.sh play-kubernetes.sh play-producer.sh ssl

4、部署方式

  1、单机 

    ./play-docker.sh alpine

  2、docker-composer  

    ./play-docker-compose.sh

  3、kubernetes集群   

     ./play-kubernetes.sh

  4、Cluster of Dledger storage(RocketMQ需要4.4.0版本以上)

    ./play-docker-dledger.sh

  5、TLS

    ./play-docker-tls.sh

    ./play-producer.sh

    ./play-consumer.sh

  我这里选择的是单机部署,可以看到生成了两个容器

[root@localhost templates]# docker ps |grep mq
9a0a6ab594b7 apacherocketmq/rocketmq:4.7.0 "sh mqbroker" 56 minutes ago Up 56 minutes 0.0.0.0:10909->10909/tcp, :::10909->10909/tcp, 9876/tcp, 0.0.0.0:10911-10912->10911-10912/tcp, :::1091110912->10911-10912/tcp rmqbroker
d8a4db8335de apacherocketmq/rocketmq:4.7.0 "sh mqnamesrv" 56 minutes ago Up 56 minutes 10909/tcp, 0.0.0.0:9876->9876/tcp, :::9876->9876/tcp, 10911-10912/tcp rmqnamesrv

  验证RocketMQ启动成功

1、使用命令 docker ps|grep rmqbroker找到RocketMQ broker的容器id

2、使用命令 docker exec -it 9a0a6ab594b7 ./mqadmin clusterList -n 172.17.0.8:9876 验证RocketMQ broker工作正常

[root@localhost elasticsearch]# docker exec -it 9a0a6ab594b7 ./mqadmin clusterList -n 192.168.1.204:9876
RocketMQLog:WARN No appenders could be found for logger (io.netty.util.internal.PlatformDependent0).
RocketMQLog:WARN Please initialize the logger system properly.

  如需升级执行以下命令

  cd image-build

  ./update.sh

5、安装RocketMQ控制台

//拉取镜像

docker pull apacherocketmq/rocketmq-console:2.0.0

//运行容器,这里172.15.65.xx为宿主机ip

docker run -e "JAVA_OPTS=-Drocketmq.namesrv.addr=172.15.65.xx:9876 -Dcom.rocketmq.sendMessageWithVIPChannel=false" -p 6881:8080 -t apacherocketmq/rocketmq-console:2.0.0

 

posted @ 2021-11-25 10:57  蒲公英PGY  阅读(680)  评论(0编辑  收藏  举报