【Docker安装RockeMQ:基于Windows宿主机,并重点解决docker rocketMQ安装情况下控制台无法访问的问题】
拉取镜像
docker pull rocketmqinc/rocketmq
创建网络
docker network create rocketmq-net
构建namesrv容器
docker run -d -p 9876:9876 -v D:/dockerFile/rocketmq/namesrv/logs:/root/logs -v D:/dockerFile/rocketmq/namesrv/store:/root/store --network rocketmq-net --name rmqnamesrv -e "MAX_POSSIBLE_HEAP=100000000" rocketmqinc/rocketmq sh mqnamesrv
构建broker容器
启动之前,你需要在 D:\dockerFile\rocketmq\broker\conf目录下创建 broker.conf 文件:
brokerClusterName = DefaultCluster
brokerName = broker-a
brokerId = 0
deleteWhen = 04
fileReservedTime = 48
brokerRole = ASYNC_MASTER
flushDiskType = ASYNC_FLUSH
brokerIP1 = 127.0.0.1//本机的ip地址
autoCreateTopicEnable=true
运行下述命令(请继续看后文,这个是错误示例,为了记录问题原因而写的反面示例)
docker run -d --name rmqbroker -p 10911:10911 -p 10909:10909 -v D:/dockerFile/rocketmq/broker/logs:/root/logs -v D:\dockerFile\rocketmq\broker\store:/root/store -v D:/dockerFile/rocketmq/broker/conf/broker.conf:/opt/rocketmq/conf/broker.conf --network rocketmq-net --link rmqnamesrv:namesrv -e "NAMESRV_ADDR=namesrv:9876" -e "MAX_POSSIBLE_HEAP=200000000" rocketmqinc/rocketmq sh rmqbroker -c /opt/rocketmq/conf/broker.conf
出现如下问题(容器运行不起来)
sh: rmqbroker: No such file or directory
sh: rmqbroker: No such file or directory

原因:sh mqbroker -c /opt/rocketmq/conf/broker.conf中的mqbroker写成了和容器名字一样的的rmqbroker.
docker run -d --name rmqbroker -p 10911:10911 -p 10909:10909 -v D:/dockerFile/rocketmq/broker/logs:/root/logs -v D:\dockerFile\rocketmq\broker\store:/root/store -v D:/dockerFile/rocketmq/broker/conf/broker.conf:/opt/rocketmq/conf/broker.conf --network rocketmq-net --link rmqnamesrv:namesrv -e "NAMESRV_ADDR=namesrv:9876" -e "MAX_POSSIBLE_HEAP=200000000" rocketmqinc/rocketmq sh mqbroker -c /opt/rocketmq/conf/broker.conf
各指令的含义参考文章:https://www.bmabk.com/index.php/post/67237.html

控制台console安装
拉取镜像
docker pull styletang/rocketmq-console-ng
运行容器
docker run -d -e "JAVA_OPTS=-Drocketmq.config.namesrvAddr=127.0.0.1:9876 -Drocketmq.config.isVIPChannel=false" -p 9999:8080 --network rocketmq-net -t --name rmqconsole styletang/rocketmq-console-ng
打开浏览器locahost:9999,出现错误


不管查了多少博客,试了多少种方法都不管用!
参考文章:https://www.cnblogs.com/datanewblood/p/17629947.html
docker pull apacherocketmq/rocketmq-dashboard:latest

打开空白,啥也没有!
以上问题解决办法
创建broker容器时,配置文件应改为
brokerClusterName = DefaultCluster
brokerName = broker-a
brokerId = 0
deleteWhen = 04
fileReservedTime = 48
brokerRole = ASYNC_MASTER
flushDiskType = ASYNC_FLUSHbrokerIP1 = 192.168.0.105autoCreateTopicEnable=true #发送消息的最大线程数
sendMessageThreadPoolNums: 64
#发送消息是否使用可重入锁
useReentrantLockWhenPutMessage: true
其中brokerIP为宿主机IP1(以太网适配器以太网下的IP),查看办法如下:
C:\Users\lxhjy>ipconfigWindows IP 配置以太网适配器 vEthernet (Default Switch):连接特定的 DNS 后缀 . . . . . . . :本地链接 IPv6 地址. . . . . . . . : fe80::7fa6:4a33:941c:8e64%21IPv4 地址 . . . . . . . . . . . . : 172.18.176.1子网掩码 . . . . . . . . . . . . : 255.255.240.0默认网关. . . . . . . . . . . . . :无线局域网适配器 WLAN:媒体状态 . . . . . . . . . . . . : 媒体已断开连接连接特定的 DNS 后缀 . . . . . . . :无线局域网适配器 本地连接* 1:媒体状态 . . . . . . . . . . . . : 媒体已断开连接连接特定的 DNS 后缀 . . . . . . . :无线局域网适配器 本地连接* 2:媒体状态 . . . . . . . . . . . . : 媒体已断开连接连接特定的 DNS 后缀 . . . . . . . :以太网适配器 以太网:连接特定的 DNS 后缀 . . . . . . . :本地链接 IPv6 地址. . . . . . . . : fe80::7bf2:e3f6:62d3:dbc6%17IPv4 地址 . . . . . . . . . . . . : 192.168.0.105子网掩码 . . . . . . . . . . . . : 255.255.255.0默认网关. . . . . . . . . . . . . : 192.168.0.1以太网适配器 蓝牙网络连接:媒体状态 . . . . . . . . . . . . : 媒体已断开连接连接特定的 DNS 后缀 . . . . . . . :以太网适配器 vEthernet (WSL):连接特定的 DNS 后缀 . . . . . . . :本地链接 IPv6 地址. . . . . . . . : fe80::fb40:3e47:1ee5:dd92%49IPv4 地址 . . . . . . . . . . . . : 172.18.16.1子网掩码 . . . . . . . . . . . . : 255.255.240.0默认网关. . . . . . . . . . . . . :
而创建控制台容器时,应该为如下:
docker run -d --name rmqdashboard -e "JAVA_OPTS=-Drocketmq.namesrv.addr=192.168.65.254:9876" -p 9080:8080 -t apacherocketmq/rocketmq-dashboard:latest
其中Drocketmq.namesrv.addr应该为容器namesrv IP,查看方法如下:
C:\Users\lxhjy>docker exec -it rmqnamesrv /bin/bash
[root@6adb298c9dcc bin]# ping host.docker.internal
PING host.docker.internal (192.168.65.254) 56(84) bytes of data.
64 bytes from 192.168.65.254 (192.168.65.254): icmp_seq=1 ttl=63 time=0.430 ms
64 bytes from 192.168.65.254 (192.168.65.254): icmp_seq=2 ttl=63 time=0.829 ms
64 bytes from 192.168.65.254 (192.168.65.254): icmp_seq=3 ttl=63 time=1.59 ms
^C
--- host.docker.internal ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 3140ms
rtt min/avg/max/mdev = 0.430/0.951/1.594/0.482 ms
问题解决

遗留问题:为啥配置了自动创建topic,这里还是false?

相关文章:
【Docker安装RockeMQ:基于Windows宿主机,并重点解决docker rocketMQ安装情况下控制台无法访问的问题】
拉取镜像 docker pull rocketmqinc/rocketmq创建网络 docker network create rocketmq-net构建namesrv容器 docker run -d -p 9876:9876 -v D:/dockerFile/rocketmq/namesrv/logs:/root/logs -v D:/dockerFile/rocketmq/namesrv/store:/root/store --network rocketmq-net -…...
Android Studio——android项目运行main()函数
报错: 解决: 如图,在 .idea 的 gradle.xml 中标注的位置增加如下一行代码即可<option name"delegatedBuild" value"false" />...
移动医疗科技:开发互联网医院系统源码
在这个数字化时代,互联网医院系统成为了提供便捷、高效医疗服务的重要手段。本文将介绍利用移动医疗科技开发互联网医院系统的源码,为医疗行业的数字化转型提供有力支持。 智慧医疗、互联网医院这一类平台可以通过线上的形式进行部分医疗服务ÿ…...
代码审计, 介绍, 思路总结
代码审计 一, 代码审计介绍 渗透测试中的代码审计是一个关键步骤,它涉及到深入检查应用程序的源代码,以发现安全漏洞、弱点或不合规的编码实践。这种审计通常由专业的安全工程师或渗透测试人员执行,并侧重于识别可能被黑客利用的安全缺陷。…...
2023NOIP A层联测27 总结
T1 一棵树,操作是把一个点染黑,查询点 x x x 到黑点路径上的最小编号, n ≤ 1 0 6 n\le10^6 n≤106。当时的思路是把树分成几部分,中间和周围的散块,发现不会,就没思路了,就去打了25pts暴力。赛…...
2022最新版-李宏毅机器学习深度学习课程-P34 自注意力机制类别总结
在课程的transformer视频中,李老师详细介绍了部分self-attention内容,但是self-attention其实还有各种各样的变化形式: 一、Self-attention运算存在的问题 在self-attention中,假设输入序列(query)长度是N…...
css sprite 的优缺点,使用方法和示例
CSS Sprite是一种网页图片应用处理方式。 CSS Sprite的原理是将一个网页或者一个模块所用到的零碎的icon整合拼接到一张大图里,再把这张大图作为背景图放入到网页中,当访问该页面时,加载的图片就不会像以前那样一幅一幅地慢慢显示出来了。 …...
通过Cookie和Session来实现网站中登录账号的功能
文章目录 一、Cookie和Session二、基于Cookie和Session实现登录账号的功能2.1步骤一2.2步骤二2.3步骤三2.4总结通过Cookie和Session来实现登录功能2.5运行截图 一、Cookie和Session cookie是http请求header中的一个属性,是浏览器持久化存储数据的一种机制ÿ…...
QWidget 实现九宫格图案解锁
前言 最近需要实现一个九宫格图案解锁功能,查看网上的方案,基于QWidget的方案全网搜来搜去就一篇 Qt编写自定义控件:图案密码锁, 都是炒来炒去的同一篇,代码还比较复杂,运行后在PC端还是可以的,但是运行在arm机器上,就卡顿,或者容易断开手势连接线,各种不友好,于是自…...
设计模式-适配器模式(Adapter)
设计模式-适配器模式(Adapter) 一、适配器模式概述1.1 什么是适配器模式1.2 简单实现适配器模式1.3 使用适配器模式注意事项 二、适配器模式的用途三、实现适配器模式的方式3.1 继承适配器模式(Inheritance Adapter)3.2 组合适配器…...
react:创建项目
一: 使用create-react-app // 默认创建reactjs的webpack打包项目 npm i create-react-app -g create-react-app 项目名// 创建ts项目打包项目 sudo npx create-react-app my-app --template typescript 二: 使用vite npm create vitelatest // 创建react…...
RabbitMQ集群
RabbitMQ概述 1.RabbiMQ简介 RabbiMQ是⽤Erang开发的,集群⾮常⽅便,因为Erlang天⽣就是⼀⻔分布式语⾔,但其本身并不⽀持负载均衡。支持高并发,支持可扩展。支持AJAX,持久化,用于在分布式系统中存储转发消…...
Qt QtCreator调试Qt源码配置
目录 前言1、编译debug版Qt2、QtCreator配置3、调试测试4、总结 前言 本篇主要介绍了在麒麟V10系统下,如何编译debug版qt,并通过配置QtCreator实现调试Qt源码的目的。通过调试源码,我们可以对Qt框架的运行机制进一步深入了解,同时…...
JavaScript如何实现钟表效果,时分秒针指向当前时间,并显示当前年月日,及2024春节倒计时,源码奉上
本篇有运用jQuery,记得引入jQuery库,否则不会执行的喔~ <!DOCTYPE html> <html> <head> <meta charset"utf-8"> <title></title> <meta name"chenc" content"Runoob"> <met…...
重生奇迹MU套装大全中的极品属性
在重生奇迹MU之中,你不能如其他游戏一般只看攻击与防御,你更要看属性,这才是重生奇迹中的王道!属性好,才是极品,属性不佳,即便攻击、防御再出色,也只能沦落成为一件替用品࿰…...
用Python解决猴子分桃问题
1 问题 海滩上有一堆桃子,五只猴子来分。第一只猴子把这堆桃子平均分为五份,多了一个,这只猴子把多的一个扔入海中,拿走了一份。第二只猴子把剩下的桃子又平均分成五份,又多了一个,它同样把多的一个扔入海中…...
YOLOv8-Seg改进:分割注意力系列篇 | 新型的多尺度卷积注意力(MSCA)模块
🚀🚀🚀本文改进: 新型的多尺度卷积注意力(MSCA)模块,实现创新,MSCA包含三个部分:深度卷积聚合局部信息,多分支深度条卷积捕获多尺度上下文,以及11卷积建模不同通道之间的关系。 🚀🚀🚀MSCA多尺度特性在小目标分割检测领域表现优异 🚀🚀🚀YOLOv8-seg…...
基于springboot实现致远汽车租赁平台管理系统项目【项目源码+论文说明】计算机毕业设计
基于springboot实现致远汽车租赁平台管理系统演示 摘要 首先,论文一开始便是清楚的论述了系统的研究内容。其次,剖析系统需求分析,弄明白“做什么”,分析包括业务分析和业务流程的分析以及用例分析,更进一步明确系统的需求。然后在明白了系统的需求基础上需要进一步地设计系统…...
真的设计师做图只需要一个炫云客户端就够了
真的设计师做图只需要一个炫云客户端就够了,为什么这么说呢?因为炫云的这个客户端功能真的太全了,设计师想要的功能在炫云客户端上都有,而且还很多功能是免费的,非常的实用,具体有哪些功能我们一起来看看吧…...
简述 HTTP 请求的过程是什么?
HTTP(Hypertext Transfer Protocol)请求的过程可以简单地描述为客户端与服务器之间的通信交互。下面是一般的 HTTP 请求过程: 解析 URL:客户端解析目标 URL,提取出服务器的主机名(域名)和端口号…...
基于Uniapp开发HarmonyOS 5.0旅游应用技术实践
一、技术选型背景 1.跨平台优势 Uniapp采用Vue.js框架,支持"一次开发,多端部署",可同步生成HarmonyOS、iOS、Android等多平台应用。 2.鸿蒙特性融合 HarmonyOS 5.0的分布式能力与原子化服务,为旅游应用带来…...
《用户共鸣指数(E)驱动品牌大模型种草:如何抢占大模型搜索结果情感高地》
在注意力分散、内容高度同质化的时代,情感连接已成为品牌破圈的关键通道。我们在服务大量品牌客户的过程中发现,消费者对内容的“有感”程度,正日益成为影响品牌传播效率与转化率的核心变量。在生成式AI驱动的内容生成与推荐环境中࿰…...
VTK如何让部分单位不可见
最近遇到一个需求,需要让一个vtkDataSet中的部分单元不可见,查阅了一些资料大概有以下几种方式 1.通过颜色映射表来进行,是最正规的做法 vtkNew<vtkLookupTable> lut; //值为0不显示,主要是最后一个参数,透明度…...
工业自动化时代的精准装配革新:迁移科技3D视觉系统如何重塑机器人定位装配
AI3D视觉的工业赋能者 迁移科技成立于2017年,作为行业领先的3D工业相机及视觉系统供应商,累计完成数亿元融资。其核心技术覆盖硬件设计、算法优化及软件集成,通过稳定、易用、高回报的AI3D视觉系统,为汽车、新能源、金属制造等行…...
聊一聊接口测试的意义有哪些?
目录 一、隔离性 & 早期测试 二、保障系统集成质量 三、验证业务逻辑的核心层 四、提升测试效率与覆盖度 五、系统稳定性的守护者 六、驱动团队协作与契约管理 七、性能与扩展性的前置评估 八、持续交付的核心支撑 接口测试的意义可以从四个维度展开,首…...
20个超级好用的 CSS 动画库
分享 20 个最佳 CSS 动画库。 它们中的大多数将生成纯 CSS 代码,而不需要任何外部库。 1.Animate.css 一个开箱即用型的跨浏览器动画库,可供你在项目中使用。 2.Magic Animations CSS3 一组简单的动画,可以包含在你的网页或应用项目中。 3.An…...
比较数据迁移后MySQL数据库和OceanBase数据仓库中的表
设计一个MySQL数据库和OceanBase数据仓库的表数据比较的详细程序流程,两张表是相同的结构,都有整型主键id字段,需要每次从数据库分批取得2000条数据,用于比较,比较操作的同时可以再取2000条数据,等上一次比较完成之后,开始比较,直到比较完所有的数据。比较操作需要比较…...
从面试角度回答Android中ContentProvider启动原理
Android中ContentProvider原理的面试角度解析,分为已启动和未启动两种场景: 一、ContentProvider已启动的情况 1. 核心流程 触发条件:当其他组件(如Activity、Service)通过ContentR…...
实战三:开发网页端界面完成黑白视频转为彩色视频
一、需求描述 设计一个简单的视频上色应用,用户可以通过网页界面上传黑白视频,系统会自动将其转换为彩色视频。整个过程对用户来说非常简单直观,不需要了解技术细节。 效果图 二、实现思路 总体思路: 用户通过Gradio界面上…...
2.2.2 ASPICE的需求分析
ASPICE的需求分析是汽车软件开发过程中至关重要的一环,它涉及到对需求进行详细分析、验证和确认,以确保软件产品能够满足客户和用户的需求。在ASPICE中,需求分析的关键步骤包括: 需求细化:将从需求收集阶段获得的高层需…...
