RabbitMQ(Docker 单机部署)

rabbitmq单机多实例部署 单机多实例部署是指在一台服务器上运行多个 RabbitMQ 实例。这种部署方式适用于需要隔离不同业务场景或测试环境的场景。每个实例可以独立配置端口、数据存储路径和日志文件,避免资源冲突。单机多实例部署的关键在于为每个实例分配独立的配置文件和资源路径,同时确保实例之间的端口不冲突。这种部署方式可以提高资源利用率,但需要更复杂的管理和维护。 阅读详情

序言

本文给大家介绍如何使用 Docker 单机部署 RabbitMQ 并与 SpringBoot 整合使用。

一、部署流程

  1. 拉取镜像

    docker pull rabbitmq:3-management
    
  2. 镜像拉取成功之后使用下面命令启动 rabbitmq 容器

    docker run \
    	# 指定用户名
     -e RABBITMQ_DEFAULT_USER=username \
     # 指定密码
     -e RABBITMQ_DEFAULT_PASS=password \
     # 指定容器名称
     --name mq \
     # 指定主机名称(任意)
     --hostname mq1 \
     # WEB 浏览器访问端口
     -p 15672:15672 \
     # AMQP 协议端口
     -p 5672:5672 \
     # 后台启动
     -d \
     # 引用的镜像
     rabbitmq:3-management
    
  3. 打开浏览器输入网址 localhost:15672 进入 RabbitMQ 管理页面

    image.png

二、SpringBoot 整合 RabbitMQ

2.1 使用 RabbitMQ 客户端

  1. 引入依赖

    <parent>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-parent</artifactId>
      <version>2.7.6</version>
    </parent>
    
    <!-- amqp 依赖-->
    <dependencies>
      <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-amqp</artifactId>
      </dependency>
    </dependencies>
    
  2. 使用案例

    public void static main() throws IOException, TimeoutException {
        // 配置连接
        ConnectionFactory factory = new ConnectionFactory();
        factory.setHost("xxx.xxx.xxx.xxx");
        factory.setPort(5672);
        factory.setVirtualHost("/");
        factory.setUsername("rabbit");
        factory.setPassword("rabbit");
    
        // 获取连接对象
        Connection connection = factory.newConnection();
    
        // 获取频道
        Channel channel = connection.createChannel();
    
        // 创建队列
        String queueName = "simple.queue";
        channel.queueDeclare(queueName, false, false, false, null);
    
        // 订阅消息
        channel.basicConsume(queueName, true, new DefaultConsumer(channel) {
            @Override
            public void handleDelivery(String consumerTag,
                                       Envelope envelope,
                                       AMQP.BasicProperties properties,
                                       byte[] body) throws IOException {
                String msg = new String(body);
                System.out.println(msg);
            }
        });
    }
    

2.2 使用 SpringAMQP

  1. 引入依赖

    <parent>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-parent</artifactId>
      <version>2.7.6</version>
    </parent>
    
    <!-- amqp 依赖-->
    <dependencies>
      <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-amqp</artifactId>
      </dependency>
    </dependencies>
    
  2. application.yml 文件中编写配置

    spring:
      rabbitmq:
        host: xxx.xxx.xxx.xxx
        port: 5672
        virtual-host: /
        username: rabbit
        password: rabbit
    
  3. 监听消息

    @Component
    public class SpringRabbitListener {
    
        @RabbitListener(queues = "simple.queue")
        public void listenMessage(String msg) {
            System.out.println(msg);
        }
    }
    
  4. 发送消息

    @Resource
    private RabbitTemplate rabbitTemplate;
    
    @Test
    public void sendTest() {
        // 需要发送的队列
        String queueName = "simple.queue";
        // 需要发送的消息
        String msg = "This is a cool message!";
        // 发送消息
        rabbitTemplate.convertAndSend(queueName, msg);
    }
    

推荐阅读

  1. 深入了解 Arthas:Java 应用程序诊断利器
  2. 基于 AI 的数据库助手-Chat2DB
  3. EasyExcel 处理 Excel
  4. 实体映射解决方案-MapStruct
  5. 动态切换数据源的最佳实践
docker安装RabbitMQ教程(2023年最详细) RABBITMQ_DEFAULT_USER:默认的用户名;如果需要安装其他版本在rabbitmq后面跟上版本号即可 docker pull rabbitmq:3.7.7-management。--hostname 主机名(RabbitMQ的一个重要注意事项是它根据所谓的 “节点名称” 存储数据,默认为主机名);安装name为rabbitmq的这里是直接安装最新的 docker pull rabbitmq。RABBITMQ_DEFAULT_PASS:默认用户名的密码)--name 指定容器名; 阅读详情

相关推荐

数理统计四大分布---正态分布、卡方分布、学生t分布和F分布

在统计学上,我们会遇到一些常见的分布,除了正态分布外,,如t检验对应的t分布,检验对应的分布,方差分析对应的F分布等。这些分布是统计学的基础,在假设检验、方差分析等领域都起着至关重要的作用。在此,我们对这四种分布做详细的介绍,并附上MATLAB代码。 四种分布的讲解摘自MATLAB 2016的统计学和机器学习工具箱,有兴趣的可以去查看英文原版。 另外,为了方便,上传文档为图片格式,可能有些模糊...

suncangan的博客 5万+

Docker高级——Docker部署RabbitMQ(单机,集群,仲裁队列)

我们在Centos7虚拟机中使用Docker来安装。

康小庄的博客 6385

Aruba CX交换机 初始化配置

Aruba CX 交换机 6000系列 8000系列交换机配置

Harry_Guo 1834

Docker简单部署RabbitMq[单机]

Docker简单部署RabbitMq[单机]

凡解的博客 639

基于Codex平台与AI Agent技能开发,实现抖音爆款视频分析与脚本自动生成

大家好,我是专注于AI应用开发的技术博主。最近在探索如何利用AI工具自动化内容创作时,我发现了一个非常有趣的组合:通过Codex平台创建自定义的Skill(技能),来批量分析抖音平台的爆款视频,并基于分析结果自动生成新的带货视频脚本。这听起来像是内容团队的“黑科技”,但实现起来其实有清晰的路径可循。本文将为你完整拆解这个实战项目,从环境搭建、Skill编写、数据抓取到视频脚本生成,手把手教你打造自己的“AI内容助理”。无论你是想了解AI Agent的开发,还是对短视频自动化创作感兴趣,都能从本文中获得可直接

weixin_34110749的博客 644

Infinite-Canvas:一站式AI绘画工作流平台部署与实战指南

在 AI 绘画和内容创作领域,你是否经常遇到这样的困扰:灵感来了,却要在多个工具间来回切换——找素材、写提示词、调整参数、批量生成,整个过程繁琐且低效。创作一个系列作品时,管理不同版本的图片和提示词更是让人头疼。如果你渴望一个能整合所有流程,实现从素材管理、提示词工程到批量出图一站式完成的工作台,那么今天介绍的 Infinite-Canvas 正是为你量身打造的解决方案。 Infinite-Canvas 是一个开源的本地网页应用,它将 AI 绘画的完整工作流集成在一个界面中。无论你是想快速生成单张图片,还是

weixin_28707535的博客 339

RabbitMQ - 单机部署(超详细)

在Centos7虚拟机中使用Docker来安装。

CYK_byte的博客 2044

【机械视觉】C#+VisionPro实战:位深图(CogImage8Grey)与Bitmap互转技巧及工业检测应用

本文详细介绍了在工业检测中如何使用C#和VisionPro实现位深图(CogImage8Grey)与Bitmap的高效互转技巧。通过实战代码示例和工业应用案例,帮助开发者解决图像处理中的常见问题,提升检测精度和系统性能,适用于半导体、汽车零部件等高精度检测场景。

weixin_29250573的博客 186

docker部署rabbitmq单机版本

docker pull rabbitmq:3.8.9-management 启动 docker run -d \ -p 15672:15672 \ -p 5672:5672 \ -p 1883:1883 \ -p 15675:15675 \ --name rabbitmq\ -e TZ=Asia/Shanghai \ -e RABBITMQ_DEFAULT_USER=admin \ -e RABBITMQ_DEFAULT_PASS=admin \ -v /docker/rabbitmq:/var/lib/

youlinhuanyan的博客 1844

车牌识别系统

随这图形图像技术的发展,现在的车牌识别技术准确率越来越高,识别速度越来越快。无论何种形式的车牌识别系统,它们都是由触发、图像采集、图像识别模块、辅助光源和通信模块组成的。车牌识别系统涉及光学、电器、电子控制、数字图像处理、计算视觉、人工智能等多项技术。触发模块负责在车辆到达合适位置时,给出触发信号,控制抓拍。辅助光源提供辅助照明,保证系统在不同的光照条件下都能拍摄到高质量的图像。图像预处理程序对抓拍的图像进行处理,去除噪声,并进行参数调整。然后通过车牌定位、字符识别,最后将识别结果输出。 牌照自动识别是一

FPGA/MATLAB学习教程/源码/项目合作开发 2万+

数据分析案例-2024 年全电动汽车数据集可视化分析

本数据集来源于Kaggle,原始数据集共有177866条数据,17个变量。该数据集显示了目前通过华盛顿州许可部 (DOL) 注册的电池电动汽车 (BEV) 和插电式混合动力电动汽车 (PHEV)。电池电动汽车 (BEV) 是一种全电动汽车,使用一个或多个电池来存储电能,为电机提供动力,并通过将车辆插入电源进行充电。插电式混合动力汽车 (PHEV) 是一种使用一个或多个电池为电动机提供动力的车辆;使用另一种燃料,例如汽油或柴油,为内燃机或其他推进源提供动力;并通过将车辆插入电源来充电。

m0_64336780的博客 1万+

使用docker快速部署rabbitmq单机和集群

文章目录环境准备安装docker修改host(每个节点都修改)安装rabbitmq单机安装rabbitmq集群加入集群检查集群状态 环境准备 节点名称 ip地址 node1 192.168.130.20 node2 192.168.130.19 node3 192.168.130.21 安装docker 略 修改host(每个节点都修改) 第一个名称为主机的名称 第二个是搭建集群用到的名称(–hostname) 192.168.130.20 kont001ecs rq-nod

KK下山去买菜 387

ROCm rocr-libhsakmt分析系列1-2:多GPU跨卡VRAM访问机制分析

本文基于ROCr-Runtime的libhsakmt库源码,深入分析了多GPU系统中跨设备内存访问的实现机制。主要内容包括: 实现流程概述:通过P2P拓扑发现、统一虚拟地址空间、页表映射和硬件转发四个步骤,实现零拷贝的跨GPU内存访问。

图形/计算GPU的驱动与虚拟化技术分享园地 2508

Rabbitmq集群docker单机部署

单服务器通过docker部署集群,并使用nginx作为中间件使用负载均衡,防止单节点压力过高。

m0_52369979的博客 260

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

RabbitMQ docker 单机部署

rabbitmq docker 单机部署

miserable_world的博客 456

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Docker安装部署RabbitMQ(单机版)

本篇文章介绍了Docker安装RabbitMQ.

时间如瑾 代码如诗 2411

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Docker部署单机rabbitmq

Docker环境部署准备 1.基础环境 [root@centos-7 ~]#cat /etc/redhat-release CentOS Linux release 7.8.2003 (Core) [root@centos-7 ~]#docker --version Docker version 19.03.12, build 48a66213fe 2.查看RabbitMQ版本 [root@centos-7 ~]#docker search RabbitMQ NAME

李凯的博客 785

docker部署rabbitmq单机+集群

Docker 安装方法 安装依赖包 sudo yum install -y yum-utils device-mapper-persistent-data lvm2 配置仓库 sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo 安装docker sudo yum install docker-ce -y 设置docker自启动 sudo systemct

qq_35599414的博客 506

docker部署RabbitMQ(单机)

一、概述 简介 RabbitMQ是实现了高级消息队列协议(AMQP)的开源消息代理软件(亦称面向消息的中间件)。RabbitMQ服务器是用Erlang语言编写的,而群集和故障转移是构建在开放电信平台框架上的。所有主要的编程语言均有与代理接口通讯的客户端库。 核心名词简介 Publisher:消息生产者 Exchange: 交换器,用来接收生产者发送的消息并将这些消息根据路由键和队列的绑定关系路由...

shykevin的博客 974

RabbitMQ环境部署(Windows、单机、Docker、集群)

RaabitMQ环境部署(Windows、单机、集群)集群部署初始化环境配置 Erlang Cookie启动服务集群搭建查看集群状态 集群部署 实验环境: 主机名 操作系统 IP地址 用途 CentOS8-1 CentOS8 192.168.0.3 磁盘节 CentOS8-2 CentOS8 192.168.0.4 内存节点 CentOS8-3 CentOS8 192.168.0.5 内存节点 初始化环境 分别修改主机名为CentOS8-1、CentOS8-2、CentOS8-3

用生命研发技术 2975

Docker部署RabbitMQ单机(Standalone)

运行RabbitMQ容器,并暴露服务端口5672与Web管理端端口15672;执行RabbitMQ命令开启Web管理端插件;,若未配置用户密码,则用户密码都默认为。进入RabbitMQ容器终端;注:镜像Tag可通过。

Rnimalgbe 531

docker rabbitmq_docker快速部署rabbitmq单机集群

1. 下载rabbitmq镜像 docker pull rabbitmq:management2. 创建docker网络 rabbtimanetdocker network create rabbtimanet3.部署rabbitmq容器rabbitmq1:docker run -d --name=rabbitmq1 -p 5672:5672 -p 15672:15672 -e RABB...

weixin_39861054的博客 250

docker快速部署rabbitmq单机集群

1. 下载rabbitmq镜像 docker pull rabbitmq:management 2. 创建docker网络 rabbtimanet docker network create rabbtimanet 3.部署rabbitmq容器 rabbitmq1: docker run -d --name=rabbitmq1 -p 5672:5672 -p 15672:15672 -e RABBITMQ_NODENAME=rabbitmq1 -e RABBITMQ_ERLANG_COOKIE='

J_Lee 303

CentOS7 docker部署rabbitmq单机和集群

CentOS7 docker部署rabbitmq单机和集群

weixin_44559544的博客 2312

Docker安装RabbitMQ(单机部署)

在线拉取 执行下面的命令来运行MQ容器: 如果–hostname这一栏不设置名字,那么需要写上一个/ 这一行就会变成: –hostname / \

weixin_44372857的博客 221
上一篇: 深入理解 Java 并发:AbstractQueuedSynchronizer 源码分析
下一篇: 掌握 CentOS 中的常用命令:提升 Linux 管理技能
知行小栈
博客等级 码龄9年 2506粉丝 153原创
评论 6
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值