docker安装rocketmq、控制台

docker安装rocketmq

找个地方保存mq配置文件和日志文件(我是windows、linux操作一样)
mkdir rocketmq/namesrv/logs
mkdir rocketmq/broker/conf
mkdir rocketmq/broker/logs
mkdir rocketmq/broker/store
mkdir rocketmq/rocketmq-console-ng/logs

安装mqnamesrv

拉取镜像:docker pull rocketmqinc/rocketmq:4.4.0
启动镜像:docker run --name rmqnamesrv --restart=always -d -p 9876:9876 -v D:\docker\rocketmq\namesrv\logs:/home/rocketmq/logs -e "MAX_POSSIBLE_HEAP=100000000" rocketmqinc/rocketmq:4.4.0 sh mqnamesrv

说明:

  • -v 挂载宿主机,输入日志文件

安装broker 服务器(mqnamesrv同一镜像)

创建配置文件:broker.conf

brokerClusterName = DefaultCluster
brokerName = broker-a
brokerId = 0
deleteWhen = 04
fileReservedTime = 48
brokerRole = ASYNC_MASTER
flushDiskType = ASYNC_FLUSH
brokerIP1 = 10.199.251.157 #外网地址

外网地址获取方式:

  • windows:ipconfig
    在这里插入图片描述
  • linux 服务器对外ip
启动broker:docker run --name rmqbroker --restart=always -d -p 10911:10911 -p 10909:10909 -v  D:\docker\rocketmq\broker\logs:/home/rocketmq/logs -v  D:\docker\rocketmq\broker\store:/home/rocketmq/store -v  D:\docker\rocketmq\broker\conf\broker.conf:/opt/rocketmq-4.4.0/conf/broker.conf --link rmqnamesrv: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

说明:

  • -v: 挂载宿主机,输入日志文件和使用配置文件
  • –link: mqnamesrv为镜像,不能直接通信,可以通过该方法通信
  • -e:指定容器内的环境变量

安装控制台

拉取最新镜像:docker pull styletang/rocketmq-console-ng
启动镜像:docker run -d --restart=always --name rocketmq-console-ng -v D:\docker\rocketmq\rocketmq-console-ng\logs:/root/logs  -e "JAVA_OPTS=-Drocketmq.namesrv.addr=mqaddr:9876 -Dcom.rocketmq.sendMessageWithVIPChannel=false" -p 6080:8080 -t --link rmqnamesrv:mqaddr styletang/rocketmq-console-ng:1.0.0

说明:

  • rmqnamesrv:namesrv镜像地址
  • mqaddr:namesrv镜像地址别名,rocketmq-console-ng中使用
访问:外网地址:28080

控制台使用技巧

  • tipic(主题)

    查看注册到mq所有的topic
    在这里插入图片描述
    功能按钮:

    • status:队列及offset信息
    • consumer manage:当前topic订阅的消费者(多订阅时某个订阅者不能消费可查看是否订阅成功)
    • send message:测试订阅
  • message
    查看某个topic全部发送的信息
    在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
Docker是一种容器化平台,可以帮助开发者将应用程序及其依赖项打包成一个独立的容器,以便在不同的环境中进行部署和运行。而RocketMQ是一款开源的分布式消息中间件,具有高吞吐量、高可用性和可伸缩性的特点。 要在Docker安装RocketMQ,可以按照以下步骤进行操作: 1. 首先,确保你已经安装DockerDocker Compose。你可以在Docker官方网站上找到相应的安装指南。 2. 创建一个新的目录,用于存放RocketMQ的配置文件和数据。 3. 在该目录下创建一个名为`docker-compose.yml`的文件,并将以下内容复制到文件中: ```yaml version: '3' services: namesrv: image: rocketmqinc/rocketmq:4.8.0 container_name: rocketmq_namesrv ports: - 9876:9876 volumes: - ./data/namesrv/logs:/root/logs - ./data/namesrv/store:/root/store command: sh mqnamesrv broker: image: rocketmqinc/rocketmq:4.8.0 container_name: rocketmq_broker ports: - 10909:10909 - 10911:10911 environment: - NAMESRV_ADDR=namesrv:9876 volumes: - ./data/broker/logs:/root/logs - ./data/broker/store:/root/store command: sh mqbroker -c /opt/rocketmq-4.8.0/conf/broker.conf console: image: styletang/rocketmq-console-ng container_name: rocketmq_console ports: - 8080:8080 environment: - JAVA_OPTS=-Drocketmq.namesrv.addr=namesrv:9876 depends_on: - namesrv ``` 4. 保存并关闭`docker-compose.yml`文件。 5. 在终端中进入到该目录,并执行以下命令启动RocketMQ容器: ```bash docker-compose up -d ``` 6. 等待一段时间,RocketMQ容器将会启动并运行。你可以通过访问`http://localhost:8080`来访问RocketMQ控制台。 至此,你已经成功在Docker安装RocketMQ。你可以使用RocketMQ的客户端工具或者编程语言的RocketMQ SDK来进行消息的发送和接收。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值