使用docker-compose部署RocketMQ5.0
简介:
使用docker-compose部署rocketmq5.0。文中会介绍docker-compose版本以及需要注意的项
第一步:进入hub.docker.com搜索rocketmq
我们选择第一个,因为第一个是7个月前更新的,(我看有很多博客使用的依旧是最下面的那种版本,但是现在的一些配置已经都不一样了,导致很多东西不能用)
第二步:下载docker-compose并赋予权限
https://get.daocloud.io/#install-compose
# get.daocloud.io是国内链接,因此可以高速安装
curl -L https://get.daocloud.io/docker/compose/releases/download/v2.12.2/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
提示:v2.12.2是版本号,可以自己更换
chmod +x /usr/local/bin/docker-compose #授权,如果没有赋予权限,下一步是查不到的
docker-compose version # docker-compose -v 都可以查看版本
执行刚刚复制的命令下载rocketmq最新版
docker pull apache/rocketmq:latest
第三步:进入服务器建立需要映射的文件夹和文件
提示:推荐在/usr/local中建立,因为linux中每个文件夹都有其用意,我们应该遵守规则。
1、建立文件夹
mkdir rocketmq
mkdir rocketmq/logs
mkdir rocketmq/data
mkdir rocketmq/conf
不小心建错使用下面命令删除
rm -rf 文件夹名称
2、在conf文件夹下建立broker.conf文件
vim broker.conf
broker.conf的内容可以从这里复制:
https://github.com/apache/rocketmq/blob/master/distribution/conf/broker.conf
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.brokerClusterName = DefaultCluster
brokerName = broker-a
brokerId = 0
deleteWhen = 04
fileReservedTime = 48
brokerRole = ASYNC_MASTER
flushDiskType = ASYNC_FLUSH
说明:我们之所以要建立broker.conf文件,是因为我们需要通过这个文件把RocketMQ管理起来,尽管我们可以暂时什么都不做
3、在rocketmq文件夹中建立docker-compose.yml文件
vim docker-compose.yml
version: '3.8'services:rmqnamesrv:image: apache/rocketmq:latestcontainer_name: rmqnamesrvports:- 9876:9876volumes:- /usr/local/rocketmq/logs:/home/rocketmq/logsenvironment:JAVA_OPT_EXT: "-Duser.home=/home/rocketmq -Xms256M -Xmx256M -Xmn128m"command: ["sh","mqnamesrv"]broker:image: apache/rocketmq:latestcontainer_name: rmqbrokerports:- 10909:10909- 10911:10911volumes:- /usr/local/rocketmq/logs:/root/logs- /usr/local/rocketmq/store:/root/store- /usr/local/rocketmq/conf/broker.conf:/home/rocketmq/broker.conflinks:- rmqnamesrv:namesrv#restart: alwaysdepends_on:- 'rmqnamesrv'environment:NAMESRV_ADDR: namesrv:9876JAVA_OPT_EXT: "-Duser.home=/home/rocketmq -Xms256M -Xmx256M -Xmn128m"command: ["sh","mqbroker","-c","/home/rocketmq/broker.conf","autoCreateTopicEnable=true"]rmqdashboard:image: apacherocketmq/rocketmq-dashboard:latestcontainer_name: rocketmq-dashboardports:- 8082:8080environment:JAVA_OPTS: "-Drocketmq.namesrv.addr=namesrv:9876"
注意:volumes参数的映射规则是," : "冒号前面是宿主机的文件夹和文件路径,冒号后面是容器内的路径。在配置broker的volumes时,容器内的路径一定要用root开头,否则会导致broker启动的时候一直退出,查看日志也没有任何信息,只能在docker-compose up的时候看见:rmqbroker exited with code 253
说明:
apacherocketmq/rocketmq-dashboard:latest
这个镜像是控制台的镜像,在docker-compose中配置好之后,启动时会自动下载(其实所有镜像配置完成后在启动时都会校验,没有则自动下载)
启动
docker-compose up -d # “ -d ” 指后台运行,想看启动时的日志可以不用加
成功
结尾
附加几个docker-compose常用的命令,如果配置有问题,方便删除重新构建
验证编写的docker-compose.yml 是否正确
docker-compose build或者docker-compose config -g
停止docker-compose运行的镜像
docker-compose stop
停止并删除docker-compose运行的镜像
docker-compose down
删除docker-compose发布的容器
docker-compose rm
相关文章:
使用docker-compose部署RocketMQ5.0
简介:使用docker-compose部署rocketmq5.0。文中会介绍docker-compose版本以及需要注意的项第一步:进入hub.docker.com搜索rocketmq我们选择第一个,因为第一个是7个月前更新的,(我看有很多博客使用的依旧是最下面的那种…...
嵌入式ARM设计编程(四) ARM启动过程控制
文章和代码已归档至【Github仓库:hardware-tutorial】,需要的朋友们自取。或者公众号【AIShareLab】回复 嵌入式 也可获取。 一、实验目的 (1) 掌握建立基本完整的ARM 工程,包含启动代码,C语言程序等&…...
企业维基都说好,今天我们来看看 wiki 软件的缺点有哪些?
企业维基企业wiki和内部知识库可能看起来是一回事——但它们实际上是非常不同的软件类型。也许您可能不知道你在寻找的是知识基础软件,还是wiki软件。 无论哪种方式,缺乏知识都是生产力的巨大瓶颈。事实上,未能分享知识是财富500强企业每年亏…...
08- 汽车产品聚类分析综合项目 (机器学习聚类算法) (项目八)
找出性价比较高的车 LabelEncoder: python:sklearn标签编码(LabelEncoder) sklearn.preprocessing.LabelEncoder的使用:在训练模型之前,通常都要对数据进行一定得处理。将类别编号是一种常用的处理方法,比如把类别“电脑”,“手机…...
揭开苹果供应链,如何将其命运与中国深度捆绑
前 言 诺基亚在2007年时拥有9亿用户,在手机市场上占据主导地位,福布斯在当时以“谁能赶上手机之王?”为标题刊登了一篇关于该公司的报道,与此同时,苹果公司推出了iPhone系列产品。16年后,苹果公司以充足的…...
Mybatis 之useGeneratedKeys注意点
一.例子 Order.javapublic class Order {private Long id;private String serial; }orderMapper.xml<?xml version"1.0" encoding"UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org/DTD Mapper 3.0" "http://mybatis.org/dtd…...
数据结构---时间复杂度
专栏:数据结构 个人主页:HaiFan. 专栏简介:开学数据结构,接下来会慢慢坑新数据结构的内容!!!! 时间复杂度前言1.算法效率1.1如何衡量一个算法的好坏1.2算法的复杂度2.时间复杂度2.1大…...
如何保证集合是线程安全的 ConcurrentHashMap如何实现高效地线程安全?
第10讲 | 如何保证集合是线程安全的? ConcurrentHashMap如何实现高效地线程安全? 我在之前两讲介绍了 Java 集合框架的典型容器类,它们绝大部分都不是线程安全的,仅有的线程安全实现,比如 Vector、Stack,在性能方面也…...
C++对象模型和this指针
成员变量和成员函数分开存储:基本概念:在C中,类内的成员变量和成员函数分开存储只有非静态成员变量才属于类的对象上每个空对象都会有一个独一无二的内存地址,所以,空对象占用内存空间的大小为1代码实现:#i…...
kubernetes教程 --Pod调度
Pod调度 在默认情况下,一个Pod在哪个Node节点上运行,是由Scheduler组件采用相应的算法计算出来的,这个过程是不受人工控制的。但是在实际使用中,这并不满足的需求,因为很多情况下,我们想控制某些Pod到达某…...
功率放大器科普知识(晶体管功率放大器的注意事项)
虽然功率放大器是电子实验室的常用仪器,但是很多人对于它却没有清晰的认识,下面就让安泰电子来为大家介绍功率放大器的科普内容以及使用注意事项,希望大家可以对功率放大器有清晰的认识。功率放大器可以把输入信号的功率放大,以满…...
CentOS 7转化系统为阿里龙蜥Anolis OS 7
转载:原社区CentOS 7迁移Anolis OS 7迁移手册 一、注意事项 Anolis OS 7生态上和依赖管理上保持跟CentOS7.x兼容,一键式迁移脚本centos2anolis.py,实现CentOS7.x到Anolis OS 7的平滑迁移。 使用迁移脚本前需要注意如下事项: 迁…...
【快速复习】一文看懂 Mysql 核心存储 隔离级别 锁 MVCC 机制
一文看懂 Mysql 核心存储 & 隔离级别 & 锁 & MVCC 机制 Mysql InnoDB 引擎下核心存储 数据&索引存储 IBD 文件 mysql 实际存储采用 B 树结构。 B 树是一种多路搜索树,其搜索性能高于 B 树 所有叶节点在同一深度,保证搜索效率仅叶节…...
面试题----集合
概述 从上图可以看出,在Java 中除了以 Map 结尾的类之外, 其他类都实现了 Collection 接⼝。 并且,以 Map 结尾的类都实现了 Map 接⼝List,Set,Map List (对付顺序的好帮⼿): 存储的元素是有序的、可重复的。 Set (注重独⼀⽆⼆…...
XSS注入基础入门篇
XSS注入基础入门篇1.XSS基础概念2. XSS的分类以及示例2.1 反射型XSS2.1.1 示例1:dvwa low 级别的反射型XSS2.1.2 攻击流程2.2 DOM型XSS2.2.1 示例2:DOM型XSS注入1.环境部署2.基础版本3.进阶绕过2.3 存储型XSS2.3.1 示例1:dvwa low示例2.3.2 攻…...
刷题 - 数据结构(二)链表
1. 链表 1.1 题目:合并两个有序链表 链表的建立与插入:关键在于留出头部,创建迭代指针。 ListNode* head new ListNode; // 通过new 创建了一个数据类型为ListNode的数据 并把该数据的地址赋值给ListNodeListNode* p 0; // 再创建一个数据…...
用于隔离PWM的光耦合器选择和使用
光耦合器(或光隔离器)是一种将电路电隔离的器件,不仅在隔离方面非常出色,而且允许您连接到具有不同接地层或在不同电压电平下工作的电路。光耦合器具有“故障安全”功能,因为如果受到高于最大额定值的电压,…...
面试完阿里,字节,腾讯的测试岗,复盘以及面试总结
前段时间由于某些原因辞职了,最近一直在面试。面试这段时间,经历过不同业务类型的公司(电商、酒店出行、金融、新能源、银行),也遇到了很多不同类型的面试官。 参加完三家大厂的面试聊聊我对面试的一些看法࿰…...
分享一个外贸客户案例
春节期间一个外贸人收到了客户的回复,但因为自己的处理方式造成了一个又一个问题,我们可以从中学到一些技巧和知识。“上次意大利的客人询价后,一直没回复(中间有打过电话,对方说口语不行,我写过邮件跟进过…...
【Kubernetes】第二篇 - 购买阿里云 ECS 实例
一,前言 上一篇,简单介绍了 CI/CD 的概念以及 ECS 服务规划,搭建整套服务需要三台服务器,配置如下: ECS 配置启动服务说明2核4GJenkins Nexus Dockerci-server2核4GDocker Kubernetesk8s-master1核1GDocker Kube…...
数影周报:据传国内45亿条快递数据泄露,聆心智能完成Pre-A轮融资
本周看点:据传国内45亿条快递数据泄露;消息称微软解雇150 名云服务销售;消息称TikTok计划在欧洲再开两个数据中心;衣服长时间放购物车被淘宝客服嘲讽;聆心智能完成Pre-A轮融资......数据安全那些事据传国内45亿条快递数…...
Leetcode力扣秋招刷题路-0073
从0开始的秋招刷题路,记录下所刷每道题的题解,帮助自己回顾总结 73. 矩阵置零 给定一个 m x n 的矩阵,如果一个元素为 0 ,则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。 示例 1: 输入:mat…...
遥感数字图像处理
遥感数字图像处理 来源:慕课北京师范大学朱文泉老师的课程 遥感应用:遥感制图、信息提取 短期内了解知识结构–>有选择的剖析经典算法原理–>系统化知识结构、并尝试实践应用 跳出算法(尤其是数学公式) 关注原理及解决问…...
深度学习常用的python函数(一)
由于我只简单的学过python和pytorch,其中有很多函数的操作都还是一知半解的,其中有些函数经常见到,所以就打算记录下来。 1.zip zip(*a):针对单个可迭代对象压缩成n个元组,元组数量n等于min(a中元素的最小长度) a [(1, 2), (3…...
2023年美国大学生数学建模A题:受干旱影响的植物群落建模详解+模型代码(一)
目录 前言 一、题目理解 背景 解析: 要求 二、建模 1.相关性分析 2.相关特征权重 只希望各位以后遇到建模比赛可以艾特认识一下我,我可以提供免费的思路和部分源码,以后的数模比赛只要我还有时间肯定会第一时间写出免费开源思路&…...
PPS文件如何转换成PPT?附两种方法
在工作中,PPS文件的使用还是很广泛的,因为作为幻灯片放映文件,点击后就能直接播放,十分方便。但如果想要修改PPS里的内容,PPS是无法编辑的,我们需要把文件转换成PPT,再进行修改。 那PPS文件如何…...
ParallelsDesktop安装【亲测可行】
我这边安装的是macos最新系统 (Ventura13.2) 本文参考这篇文章安装,但是你完全按照这篇文章会报错,具体可行操作记录如下 一、下载软件和补丁 1、点这里去下载补丁18.0.1 2、点这里去下载对应版本的ParallelsDesktop18.0.1,安装上到试用这里…...
在 Python 中只接受数字作为用户输入
只接受数字作为用户输入: 使用 while True 循环进行循环,直到用户输入一个数字。使用 float() 类尝试将值转换为浮点数。如果用户输入了一个数字,请使用 break 语句跳出循环。 while True:try:# 👇️ use int() instead of floa…...
【集合】JAVA基础篇(二)
目录一、java常用集合1、Java集合接口的作用2、Java集合常用实现类的作用二、Collection 常用的方法三、List 集合接口1、ArrayList类的常用方法2、LinkList类中的方法3、Vector4、ArrayList 类和 LinkedList 类的区别四、Set 集合1、HashSet 类2、TreeSet 类3、HashSet 和 Tre…...
机房意外掉电导致Elasticsearch的部分index无数据的修复过程
环境 :华为大数据集群FusionInsight V100R002C800SPC200、Elasticsearch 6.1.3、Kibana问题产生原因:因机房意外掉电导致集群部分机器两次掉电导致Elasticsearch重启,Elasticsearch重启后看似正常但某些index无数据。经排查判断为Elasticsearch的部分ind…...
环保网页设计制作流程/seo推广优化外包公司
我要实现的就是,当接口返回数据时,我在任何组件中都能感知到到该数据的变化,然后根据业务逻辑进行处理、展示。 实现这个效果的方式很多,比如当接口返回数据后,就emit这数据,在另外组件中on接收渲染即可&am…...
做最好的导航网站/郑州网站推广优化公司
vmware --> 左侧选择具体的计算机 --> 右键选择 设置 --> 处理器 --> 把 虚拟化 Intel VT-x/EPT 或 AMD-V、RVI(V) 勾上 --> 重启虚拟机。 [rootcentos7.5 ~]# egrep "lm|vmx|svm" /proc/cpuinfo 如果匹配到内容即表示已支持kvm虚拟化。转载于:https:…...
新手做视频网站好/百度官网首页登录
只用于发post请求 #pragma mark - post请求 - (void)post {// 1.创建请求对象NSURL *url [NSURL URLWithString:"http://192.168.1.200:8080/Server/login"];ASIFormDataRequest *request [ASIFormDataRequest requestWithURL:url];// 2.添加请求参数(请求体中的参…...
大良用户网站建设/新站如何让百度快速收录
目录 一,为什么需要动态内存分配? 1,传统数组的缺点: 2,为什么需要动态内存分配? 二,动态内存函数的介绍 1,malloc和free 2,calloc 3,realloc 三,常见的动态内存错误 1,对N…...
阿里巴巴网站怎么设计师/推广排名
导读 国内有庞大的仓储物流从业人员队伍,很多人想深入了解WMS与TMS究竟是什么。本文详细解析WMS与TMS的选型与实施。 WMS实施(上) 和其它软件项目的实施大同小异,王二整理了WMS选型和上线过程中容易被忽略的10大误区。 1、过分…...
nginx_lua wordpress/优化培训方式
1 路由 通过 AngularJS 可以实现多视图的单页 Web 应用(single page web application,SPA)。 通常我们的 URL 形式为 http://runoob.com/first/page,但在单页 Web 应用中 AngularJS 通过 #! 标记 实现,例如࿱…...