RabbitMQ系列文章(第二篇):RabbitMQ环境搭建——Windows/Linux/docker全教程(避坑指南)
2026/5/1 20:21:26 网站建设 项目流程

大家好,欢迎来到RabbitMQ系列的第二篇文章!上一篇我们搞懂了消息队列的核心价值、主流MQ的对比,以及RabbitMQ的优势,今天我们正式进入实操环节——环境搭建。

环境搭建是所有实操的基础,也是新手最容易踩坑的环节:比如Erlang版本和RabbitMQ不兼容、Linux防火墙没开放端口、Docker部署后访问不到管理界面等。今天这篇文章,我们将分步讲解Windows、Linux(CentOS/Ubuntu)、Docker三种部署方式,全程标注避坑点,无论你用哪种系统,都能跟着步骤顺利搭建好RabbitMQ环境,为后续的实操学习(创建队列、发送消息等)做好准备。

核心前提:RabbitMQ是基于Erlang语言开发的,因此无论哪种部署方式,都需要先安装Erlang环境(Docker部署可省略手动安装,镜像已自带),且Erlang版本必须与RabbitMQ版本对应,这是最关键的避坑点,大家一定要注意!

一、前置准备:Erlang与RabbitMQ版本对应关系(必看避坑)
很多新手搭建失败,核心原因就是Erlang版本和RabbitMQ版本不匹配,导致启动失败。这里给大家推荐一组稳定兼容的版本(新手首选,无需纠结版本选择),也可以根据自己的需求,在RabbitMQ官方文档查询对应关系:

  • Erlang版本:25.3.2(稳定版,适配绝大多数RabbitMQ版本)

  • RabbitMQ版本:3.12.10(稳定版,支持所有核心特性,适配Erlang 25.x)

避坑提示:不要安装最新版Erlang和RabbitMQ,最新版可能存在兼容性问题;也不要随意搭配版本,严格按照官方对应关系选择,本文全程基于上述推荐版本讲解。

官方版本对应查询地址(备用):https://www.rabbitmq.com/which-erlang.html(复制到浏览器可直接访问)

二、Windows系统部署(新手首选,操作最简单)

Windows系统部署无需复杂的命令,全程图形化操作,适合刚入门的新手,步骤如下:

步骤1:安装Erlang环境

  1. 下载Erlang安装包:访问Erlang官方下载地址(https://www.erlang.org/downloads),选择“OTP 25.3.2 Windows 64-bit”(根据自己系统位数选择,现在大多是64位),点击下载。

  2. 安装Erlang:双击下载的.exe安装包,点击“Next”,选择安装路径(建议默认路径,避免中文路径,比如C:\Program Files\Erlang OTP),一路点击“Next”,最后点击“Finish”完成安装。

  3. 配置Erlang环境变量(关键步骤):

  • 右键“此电脑”→“属性”→“高级系统设置”→“环境变量”。

  • 在“系统变量”中,点击“新建”,变量名填写“ERLANG_HOME”,变量值填写Erlang的安装路径(比如C:\Program Files\Erlang OTP),点击“确定”。

  • 找到“系统变量”中的“Path”,双击打开,点击“新建”,输入“%ERLANG_HOME%\bin”,点击“确定”,保存所有环境变量配置。

  1. 验证Erlang是否安装成功:打开cmd命令提示符,输入“erl -version”,如果出现Erlang版本信息(比如Erlang/OTP 25 [erts-13.2.2.1]),说明安装成功;如果提示“erl不是内部或外部命令”,说明环境变量配置错误,重新检查路径。

避坑提示:安装路径一定不要有中文、空格,否则会导致后续RabbitMQ启动失败;环境变量配置后,需要关闭cmd重新打开,才能生效。

步骤2:安装RabbitMQ

  1. 下载RabbitMQ安装包:访问RabbitMQ官方下载地址(https://www.rabbitmq.com/download.html),找到“Windows Installer”,选择“rabbitmq-server-3.12.10.exe”下载(对应我们推荐的版本)。

  2. 安装RabbitMQ:双击安装包,点击“Next”,选择安装路径(建议默认路径,与Erlang安装路径保持一致的磁盘,比如C:\Program Files\RabbitMQ Server),一路点击“Next”,最后点击“Finish”完成安装。

  3. 启动RabbitMQ服务:

  • 方式1:图形化启动。打开“服务”(Win+R输入“services.msc”),找到“RabbitMQ”,右键“启动”,启动成功后,状态会显示“正在运行”。

  • 方式2:命令行启动。打开cmd(以管理员身份运行),输入命令“rabbitmq-service start”,提示“RabbitMQ service started successfully”,说明启动成功。

  1. 验证RabbitMQ是否启动成功:打开浏览器,输入“http://localhost:15672”,如果能看到RabbitMQ管理界面的登录页,说明启动成功。

避坑提示:如果启动失败,大概率是Erlang版本不兼容,或者安装路径有中文/空格;如果启动成功但访问不到管理界面,检查RabbitMQ服务是否真的在运行,或者端口是否被占用。

步骤3:配置RabbitMQ管理界面(默认已开启,无需额外配置)
RabbitMQ默认自带Web管理界面,默认端口是15672,默认账号密码都是“guest”(仅本地访问可用,后续可修改)。

操作:打开浏览器,输入“http://localhost:15672”,输入账号guest、密码guest,点击登录,即可进入管理界面(后续文章会详细讲解管理界面的使用)。

三、Linux系统部署(CentOS/Ubuntu双版本,服务器常用)

Linux系统是服务器部署的首选,这里分别讲解CentOS(主流服务器系统)和Ubuntu两种版本的部署步骤,操作均通过命令行完成,新手跟着复制命令即可。

(一)CentOS系统部署
步骤1:安装Erlang环境

  1. 安装依赖:打开终端,输入以下命令,安装Erlang所需的依赖包:
yuminstall-ygcc gcc-c++ glibc-develmakencurses-devel openssl-devel autoconf

2.下载并解压Erlang安装包:

# 下载Erlang 25.3.2安装包wgethttps://github.com/erlang/otp/releases/download/OTP-25.3.2/otp_src_25.3.2.tar.gz# 解压安装包tar-zxvfotp_src_25.3.2.tar.gz# 进入解压后的目录cdotp_src_25.3.2

3.编译并安装Erlang:

# 配置编译参数(默认路径安装)./configure--prefix=/usr/local/erlang --without-javac# 编译(耗时较长,耐心等待)make# 安装makeinstall

4.配置Erlang环境变量:

# 编辑环境变量配置文件vi/etc/profile# 在文件末尾添加以下内容exportERLANG_HOME=/usr/local/erlangexportPATH=$ERLANG_HOME/bin:$PATH# 使环境变量生效source/etc/profile
  1. 验证Erlang安装成功:输入“erl -version”,出现版本信息即成功。

步骤2:安装RabbitMQ

  1. 下载RabbitMQ安装包:
    wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.12.10/rabbitmq-server-generic-unix-3.12.10.tar.xz

2.解压安装包:

# 先安装xz解压工具(如果没有)yuminstall-yxz# 解压xz包xz-drabbitmq-server-generic-unix-3.12.10.tar.xz# 解压tar包tar-xvfrabbitmq-server-generic-unix-3.12.10.tar# 将解压后的目录移动到/usr/local下,并重命名为rabbitmqmvrabbitmq_server-3.12.10 /usr/local/rabbitmq

3.配置RabbitMQ环境变量:

# 编辑环境变量配置文件vi/etc/profile# 在文件末尾添加以下内容exportRABBITMQ_HOME=/usr/local/rabbitmqexportPATH=$RABBITMQ_HOME/sbin:$PATH# 使环境变量生效source/etc/profile

4.启动RabbitMQ服务:# 启动RabbitMQ(后台启动)

rabbitmq-server-detached# 查看RabbitMQ运行状态rabbitmqctl status

5.开启管理界面插件(关键步骤,否则无法访问Web管理界面):

rabbitmq-pluginsenablerabbitmq_management

6.开放端口(关键避坑点):RabbitMQ默认使用两个端口,15672(管理界面)和5672(消息通信),需要开放这两个端口,否则外部无法访问:

# 开放15672和5672端口firewall-cmd --add-port=15672/tcp--permanentfirewall-cmd --add-port=5672/tcp--permanent# 重新加载防火墙配置firewall-cmd--reload

(二)Ubuntu系统部署
Ubuntu系统部署步骤与CentOS类似,主要差异在于依赖安装和包管理命令(yum替换为apt),步骤如下:

  1. 安装依赖:
sudoaptupdatesudoaptinstall-ygcc g++makencurses-dev openssl libssl-dev autoconf
  1. 下载并安装Erlang(步骤与CentOS一致,仅依赖安装命令不同),此处省略重复步骤,参考CentOS步骤1的2-5步。

  2. 下载并安装RabbitMQ(与CentOS步骤2一致),此处省略重复步骤。

  3. 开放端口(Ubuntu防火墙命令不同):

# 开放15672和5672端口sudoufw allow15672/tcpsudoufw allow5672/tcp# 重启防火墙sudoufw reload

避坑提示:Linux系统部署时,一定要开放端口,否则外部(比如Windows电脑)无法访问RabbitMQ管理界面;如果启动失败,检查Erlang版本、环境变量配置,或者查看日志(日志路径:/usr/local/rabbitmq/var/log/rabbitmq)。

四、Docker部署(推荐新手,最快捷,无需手动安装Erlang)

Docker部署是最简单、最快捷的方式,无需手动安装Erlang,RabbitMQ镜像已自带兼容的Erlang环境,适合所有系统(Windows、Linux、Mac),前提是你的电脑已安装Docker。

步骤1:安装Docker(新手补充,已安装可跳过)

Docker安装步骤简单,这里以Windows和Linux为例,简要说明:

  • Windows系统:下载Docker Desktop(https://www.docker.com/products/docker-desktop),双击安装,安装完成后启动Docker(需开启Hyper-V,Windows 10及以上版本支持)。

  • Linux系统(CentOS/Ubuntu):输入以下命令安装Docker(CentOS):
    yum install -y docker
    systemctl start docker
    systemctl enable docker

验证Docker是否安装成功:输入“docker -v”,出现Docker版本信息即成功。

步骤2:拉取RabbitMQ镜像(带管理界面)
RabbitMQ有两个镜像,一个是基础版(无管理界面),一个是带管理界面版(推荐),我们拉取带管理界面的镜像,输入以下命令:

# 拉取RabbitMQ 3.12.10版本(带管理界面)dockerpull rabbitmq:3.12.10-management

避坑提示:镜像名称一定要加“-management”,否则没有Web管理界面;如果拉取速度慢,可以切换Docker镜像源(比如阿里云镜像源)。

步骤3:创建并启动RabbitMQ容器
输入以下命令,创建并启动RabbitMQ容器,一次性配置好端口映射和默认账号密码:

# 创建并启动容器,映射端口15672(管理界面)和5672(消息通信)dockerrun-d--namerabbitmq-p15672:15672-p5672:5672-eRABBITMQ_DEFAULT_USER=guest-eRABBITMQ_DEFAULT_PASS=guest rabbitmq:3.12.10-management

命令解释:

  • -d:后台运行容器

  • –name rabbitmq:给容器命名为rabbitmq,方便后续管理

  • -p 15672:15672:将容器的15672端口映射到宿主机的15672端口(管理界面)

  • -p 5672:5672:将容器的5672端口映射到宿主机的5672端口(消息通信)

  • -e RABBITMQ_DEFAULT_USER=guest:设置默认账号为guest

  • -e RABBITMQ_DEFAULT_PASS=guest:设置默认密码为guest

步骤4:验证Docker部署是否成功

  1. 查看容器运行状态:输入“docker ps”,如果能看到名称为rabbitmq的容器,状态为“Up”,说明启动成功。

  2. 访问管理界面:打开浏览器,输入“http://宿主机IP:15672”(Windows宿主机IP为localhost,Linux宿主机IP为服务器IP),输入账号guest、密码guest,能成功登录即部署完成。

避坑提示:如果Docker容器启动失败,输入“docker logs rabbitmq”查看日志,大概率是端口被占用(比如之前安装过RabbitMQ,未停止服务);如果访问不到管理界面,检查Docker容器是否在运行,以及宿主机端口是否开放。

五、常见问题排查(新手必看,避坑汇总)

结合新手常踩的坑,汇总以下常见问题及解决方案,遇到问题直接对照排查:

  1. 问题1:启动RabbitMQ失败,提示“Erlang version not compatible”
    解决方案:Erlang版本与RabbitMQ版本不匹配,卸载当前Erlang或RabbitMQ,重新安装本文推荐的兼容版本。

  2. 问题2:启动成功,但访问不到管理界面(http://localhost:15672无法打开)
    解决方案:

  • 检查RabbitMQ服务是否真的在运行(Windows看服务,Linux看进程,Docker看容器)。

  • 检查端口是否被占用:Windows输入“netstat -ano | findstr 15672”,Linux输入“netstat -tuln | grep 15672”,如果被占用,停止占用端口的进程,重新启动RabbitMQ。

  • Linux/Docker部署:检查防火墙是否开放15672端口,未开放则重新开放。

  • Docker部署:检查端口映射是否正确,容器是否启动成功。

  1. 问题3:登录管理界面,提示“Invalid credentials”(账号密码错误)
    解决方案:默认账号密码都是guest,仅本地访问可用;如果是远程访问(比如Linux服务器),需要创建新的账号并授权,后续文章会讲解。

  2. 问题4:Docker容器启动后,很快就停止(状态为Exited)
    解决方案:输入“docker logs rabbitmq”查看日志,大概率是端口被占用,或者镜像拉取不完整,重新拉取镜像,释放占用端口后再启动。

六、下一篇预告
恭喜你!今天我们成功搭建了RabbitMQ环境,无论是Windows、Linux还是Docker部署,只要跟着步骤操作,都能顺利完成。环境搭建完成后,下一篇文章我们将深入学习RabbitMQ的核心概念——交换机、队列、绑定,通过图文+实操截图的方式,让你彻底搞懂这些核心组件的作用,以及它们之间的关系,为后续发送、接收消息打下基础。

如果这篇实操教程对你有帮助,欢迎点赞、收藏,如果你在搭建过程中遇到其他问题,欢迎在评论区留言,我会一一解答,后续我们继续吃透RabbitMQ!

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询