【微服务中间件】RabbitMQ 多平台安装搭建实践指南(Windows_macOS_Ubuntu_Docker 全场景)

注意点:

RabbitMQ 对 Erlang 版本有严格兼容性要求(可参考官方兼容表)。推荐通过 Erlang Solutions 仓库安装适配版本

文章目录

    • Windows安装
      • [1. 安装前准备](#1. 安装前准备)
      • [2. 安装Erlang](#2. 安装Erlang)
      • [3. 安装RabbitMQ](#3. 安装RabbitMQ)
      • [4. 启用管理界面](#4. 启用管理界面)
      • [5. 验证安装](#5. 验证安装)
      • 常见问题及解决方案
    • macOS安装
      • [1. Homebrew安装方式(推荐)](#1. Homebrew安装方式(推荐))
      • [2. Docker安装方式(轻量不污染系统)](#2. Docker安装方式(轻量不污染系统))
      • [3. 配置与验证](#3. 配置与验证)
    • Ubuntu安装
      • [1. 安装依赖](#1. 安装依赖)
      • [2. 安装RabbitMQ](#2. 安装RabbitMQ)
      • [3. 服务管理与配置](#3. 服务管理与配置)
      • [4. 验证与使用](#4. 验证与使用)
    • Docker安装(跨平台方案)
      • [1. 安装Docker](#1. 安装Docker)
      • [2. 运行RabbitMQ容器(推荐方式)](#2. 运行RabbitMQ容器(推荐方式))
      • [3. 使用Docker Compose(推荐生产环境)](#3. 使用Docker Compose(推荐生产环境))
      • [4. 验证与管理](#4. 验证与管理)
    • 安装方式对比
    • 总结与下一步

Windows安装

1. 安装前准备

2. 安装Erlang

  1. 下载对应系统的Erlang安装包(如otp_win64_24.1.7.exe
  2. 右键以管理员身份运行安装程序,一路点击"Next"(建议默认路径)
  3. 配置环境变量:
    • 右键"此电脑"→属性→高级系统设置→环境变量
    • 在系统变量中找到"Path"→编辑→新建→添加C:\Program Files\erl{version}\bin
  4. 验证安装:打开命令提示符(Win+R→cmd),输入erl -version,显示版本信息即成功

3. 安装RabbitMQ

  1. 下载Windows安装包(.exe.zip),推荐.exe安装方式
  2. 以管理员身份运行安装程序,按提示完成(推荐默认路径)
  3. 安装完成后,RabbitMQ会自动注册为Windows服务并启动
  4. 可选 :配置环境变量,将C:\Program Files\RabbitMQ Server\rabbitmq_server-{版本}\sbin添加到Path

4. 启用管理界面

  1. 打开命令提示符(管理员身份),输入:
plain 复制代码
rabbitmq-plugins enable rabbitmq_management

输出显示"started 3 plugins"表示成功

  1. 重启RabbitMQ服务:
plain 复制代码
net stop RabbitMQ
net start RabbitMQ

或通过服务管理器(Win+R→services.msc)重启

  1. 浏览器访问http://localhost:15672,使用默认账号guest/guest登录

5. 验证安装

  • 通过服务管理器确认RabbitMQ服务状态为"正在运行"
  • 命令行执行rabbitmqctl status查看节点状态
  • 管理界面查看队列、交换机等组件是否正常

常见问题及解决方案

问题 解决方案
服务启动失败 检查Erlang和RabbitMQ版本兼容性,参考官方版本矩阵
管理界面无法访问 检查防火墙是否开放15672端口,重启服务
命令行找不到erl/rabbitmqctl 确认环境变量配置正确,重启命令提示符
中文路径错误 重新安装到纯英文路径(如C:\Program Files\

macOS安装

1. Homebrew安装方式(推荐)

步骤1:安装Homebrew(如已安装,跳过)

bash 复制代码
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

验证:brew --version

步骤2:安装RabbitMQ

bash 复制代码
brew update      # 更新Homebrew
brew install rabbitmq  # 自动安装依赖的Erlang

安装完成后,RabbitMQ相关命令位于:

  • Intel Mac: /usr/local/opt/rabbitmq/sbin
  • Apple Silicon: /opt/homebrew/opt/rabbitmq/sbin

步骤3:启动服务

bash 复制代码
# 后台启动(开机自启)
brew services start rabbitmq

# 临时启动(关闭终端即停止)
rabbitmq-server

验证状态:brew services list

步骤4:启用管理界面

bash 复制代码
rabbitmq-plugins enable rabbitmq_management

浏览器访问:http://localhost:15672,使用guest/guest登录

2. Docker安装方式(轻量不污染系统)

bash 复制代码
# 安装Docker Desktop for Mac(官网下载)

# 运行RabbitMQ容器
docker run -d --hostname my-rabbit --name rabbitmq \
  -p 5672:5672 -p 15672:15672 \
  rabbitmq:management

访问:http://localhost:15672

3. 配置与验证

添加环境变量(可选,方便命令行使用):

bash 复制代码
# Intel Mac
echo 'export PATH=$PATH:/usr/local/opt/rabbitmq/sbin' >> ~/.zshrc

# Apple Silicon
echo 'export PATH=$PATH:/opt/homebrew/opt/rabbitmq/sbin' >> ~/.zshrc

source ~/.zshrc  # 立即生效

验证安装

  • 检查端口:lsof -i :5672(有进程监听表示服务运行)
  • 管理界面访问:http://localhost:15672
  • 命令行验证:rabbitmqctl status

Ubuntu安装

1. 安装依赖

bash 复制代码
#更新 Ubuntu 的包列表,确保依赖库最新
sudo apt update && sudo apt upgrade -y
# 安装 erlang
sudo apt-get install erlang-nox

# 查看relang语言版本,成功执行则说明relang安装成功
erl   
或
erl -version  # 输出类似 "Erlang (SMP,ASYNC_THREADS) (BEAM) emulator version X.Y.Z" 即成功

验证Erlangerl -version(显示版本信息即成功)

2. 安装RabbitMQ

bash 复制代码
# 添加公钥
wget -O- https://www.rabbitmq.com/rabbitmq-release-signing-key.asc | sudo apt-key add -
# 更新软件包(可选)
sudo apt-get update
# 安装
# 安装成功自动启动
sudo apt-get install rabbitmq-server  

注意:Ubuntu会自动安装与RabbitMQ兼容的Erlang版本

3. 服务管理与配置

启动服务

bash 复制代码
sudo systemctl start rabbitmq-server    # 启动服务
sudo systemctl enable rabbitmq-server   # 设置开机自启
sudo systemctl status rabbitmq-server   # 检查服务状态

启用管理界面

bash 复制代码
sudo rabbitmq-plugins enable rabbitmq_management

添加管理员用户(远程访问必须):

bash 复制代码
sudo rabbitmqctl add_user admin password   # 创建用户
sudo rabbitmqctl set_user_tags admin administrator  # 设置为管理员角色
sudo rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"  # 设置权限
# 查看用户
sudo rabbitmqctl list_users
# 修改用户密码
sudo rabbitmqctl change_password username newpassword

开放防火墙端口(如启用ufw):

bash 复制代码
sudo ufw allow 5672/tcp   # AMQP协议端口
sudo ufw allow 15672/tcp  # 管理界面端口

4. 验证与使用

访问管理界面

  • 本地:http://localhost:15672
  • 远程:http://服务器IP:15672(使用创建的admin用户登录)

命令行管理

bash 复制代码
rabbitmqctl status        # 查看服务器状态
rabbitmqctl list_queues   # 列出所有队列

Docker安装(跨平台方案)

1. 安装Docker

  • Linuxsudo apt install docker.io; sudo systemctl enable docker
  • macOS/Windows:下载Docker Desktop(官网)安装并启动

2. 运行RabbitMQ容器(推荐方式)

bash 复制代码
# 拉取带管理界面的官方镜像
docker pull rabbitmq:management

# 启动容器(推荐配置)
docker run -d \
  --name rabbitmq \
  --hostname rabbitmq-server \
  -p 5672:5672 \        # AMQP协议端口
  -p 15672:15672 \      # 管理界面端口
  -v /data/rabbitmq/data:/var/lib/rabbitmq \  # 数据持久化
  -v /data/rabbitmq/plugins:/plugins \        # 插件目录
  -e RABBITMQ_DEFAULT_USER=admin \            # 设置默认用户
  -e RABBITMQ_DEFAULT_PASS=password \        # 设置默认密码
  rabbitmq:management

3. 使用Docker Compose(推荐生产环境)

创建docker-compose.yml文件:

yaml 复制代码
version: '3'
services:
  rabbitmq:
    image: rabbitmq:management
    container_name: rabbitmq
    ports:
      - "5672:5672"
      - "15672:15672"
    volumes:
      - ./data/rabbitmq/data:/var/lib/rabbitmq
      - ./data/rabbitmq/plugins:/plugins
    environment:
      - RABBITMQ_DEFAULT_USER=admin
      - RABBITMQ_DEFAULT_PASS=password
    restart: always  # 容器崩溃自动重启

启动:docker-compose up -d

4. 验证与管理

访问管理界面http://localhost:15672,使用设置的用户名密码登录

进入容器

bash 复制代码
docker exec -it rabbitmq /bin/bash  # 进入容器命令行

常用Docker命令

bash 复制代码
docker ps         # 查看运行中的容器
docker logs rabbitmq  # 查看日志
docker restart rabbitmq  # 重启服务

安装方式对比

安装方式 优势 适用场景
Windows安装 图形界面友好,服务管理方便 Windows开发环境
macOS Homebrew 一键安装依赖,管理便捷 macOS开发环境
Ubuntu包管理 系统集成度高,适合服务器 Linux生产环境
Docker部署 跨平台、轻量、隔离性好、便于迁移 开发测试、多环境部署、云原生

总结与下一步

以上介绍了RabbitMQ在四大平台的详细安装步骤。无论选择哪种方式,都需要注意:

  1. 版本兼容性:确保Erlang与RabbitMQ版本匹配(Docker方式可忽略)
  2. 管理界面:生产环境务必创建专用管理员用户,禁用默认guest账号
  3. 持久化:生产环境建议配置数据持久化(Docker挂载卷或本地目录)

下一步建议:

  • 学习RabbitMQ基本概念(交换机、队列、绑定)
  • 尝试使用官方提供的各种客户端(Python/Java/JavaScript等)进行消息收发
  • 了解集群部署方案,提升系统高可用性

注:本文安装步骤基于2025年11月最新版本,具体细节可能随版本更新略有调整,建议参考RabbitMQ官方文档获取最准确信息。

相关推荐
拾忆,想起3 小时前
Dubbo线程模型全解析:提升微服务性能的底层逻辑
java·数据库·微服务·架构·dubbo·哈希算法
q***71855 小时前
开源数据同步中间件(Dbsyncer)简单玩一下 mysql to mysql 的增量,全量配置
mysql·中间件·开源
qq_281317475 小时前
RabbitMQ
分布式·rabbitmq
罗小爬EX5 小时前
基于WebSocket + STOMP + SockJS + RabbitMq的聊天室Demo
websocket·网络协议·rabbitmq
大飞哥~BigFei5 小时前
RabbitMq消费消息遇到的坑
java·rabbitmq·java-rabbitmq
百***37486 小时前
Spring Boot 中 RabbitMQ 的使用
spring boot·rabbitmq·java-rabbitmq
yumo_fly6 小时前
欧拉22.03系统安装RabbitMQ-3.6.10
分布式·rabbitmq·ruby
百***46806 小时前
RabbitMQ之交换机
分布式·rabbitmq·ruby
KYumii6 小时前
RabbitMQ应用(2)
分布式·rabbitmq