rocketmq 基于docker部署

  1. 安装name服务
    1. 拉取4.4.0镜像
    2. 创建挂载文件夹
    3. 运行容器
  2. 安装broker服务
    1. 创建配置文件
  3. 安装admin控制台
    1. 拉镜像
    2. 运行
    3. 开防火墙端口
    4. 访问

安装name服务

拉取4.4.0镜像

docker pull rocketmqinc/rocketmq:4.4.0

创建挂载文件夹

mkdir -p /data/mq/conf

运行容器

docker run -d -p 9876:9876 \
-v /data/mq/data/namesrv/logs:/root/logs \
-v /data/mq/data/namesrv/store:/root/store \
--name rmqname \
-e "MAX_POSSIBLE_HEAP=100000000" \
rocketmqinc/rocketmq:4.4.0 sh mqnamesrv

安装broker服务

创建配置文件

vi /data/mq/conf/broker.conf

填入以下内容并保存,其中brokerIP1为broker所在服务器的ip

brokerClusterName = DefaultCluster
brokerName = broker-a
brokerId = 0
deleteWhen = 04
fileReservedTime = 24
mappedFileSizeCommitLog = 512 * 1024 * 1024
brokerRole = ASYNC_MASTER
flushDiskType = ASYNC_FLUSH
brokerIP1 = {本地外网 IP}
# brokerIP1如果不手动指定,会默认使用docker分配的虚拟ip,
影响mq的正常使用。**

保存完成之后创建broker容器,看清楚,务必替换{nameservice IP}

docker run -d \
-p 10911:10911 -p 10909:10909 \
-v  /data/mq/data/broker/logs:/root/logs \
-v /data/mq/rocketmq/data/broker/store:/root/store \
-v  /data/mq/conf/broker.conf:/opt/rocketmq-4.4.0/conf/   \ 
broker.conf \
--name rmqbroker --link rmqname:namesrv \
-e "NAMESRV_ADDR=namesrv:9876" \
-e "MAX_POSSIBLE_HEAP=200000000" \
rocketmqinc/rocketmq:4.4.0 sh mqbroker \
-c /opt/rocketmq-4.4.0/conf/broker.conf

安装admin控制台

拉镜像

docker pull styletang/rocketmq-console-ng

运行

docker run -d \
-e "JAVA_OPTS=-Drocketmq.namesrv.addr=172.20.89.95:9876 -Dcom.rocketmq.sendMessageWithVIPChannel=false" \
-p 9877:8080 \
--name rmqadmin -t \
styletang/rocketmq-console-ng

运行方式二

docker run -d --name rmqadmin --link rmqname:rmqnamesrv  \
-e "JAVA_OPTS=-Drocketmq.namesrv.addr=rmqnamesrv:9876 -Dcom.rocketmq.sendMessageWithVIPChannel=false" \
-p 9877:8080 -t styletang/rocketmq-console-ng

开防火墙端口

可以参考《linux 防火墙》

也可以:

systemctl start firewalld.service
firewall-cmd --zone=public --add-port=9876/tcp --permanent
firewall-cmd --zone=public --add-port=9877/tcp --permanent
firewall-cmd --zone=public --add-port=10909/tcp --permanent
firewall-cmd --zone=public --add-port=10911/tcp --permanent
firewall-cmd --reload

访问

访问地址:http://ip:9877/


转载请注明来源。 欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。 可以在下面评论区评论,也可以邮件至 sharlot2050@foxmail.com。

文章标题:rocketmq 基于docker部署

字数:393

本文作者:夏来风

发布时间:2019-12-02, 22:42:14

原始链接:http://www.demo1024.com/blog/rocketmq-docker/

版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。