Docker下安装RabbitMQ

文章目录

  • Docker下安装RabbitMQ
    • [1. 下载Rabbitmq镜像](#1. 下载Rabbitmq镜像)
    • [2. 创建并运行RabbitMQ容器](#2. 创建并运行RabbitMQ容器)
    • [3. 查看启动情况](#3. 查看启动情况)
    • [4. 启动RabbitMQ访问的Web客户端](#4. 启动RabbitMQ访问的Web客户端)
    • [4-1 方法一 进入容器开启](#4-1 方法一 进入容器开启)
    • [4-2 方法二 直接开启](#4-2 方法二 直接开启)
    • [5. 浏览器访问RabbitMQ的Web客户端页面](#5. 浏览器访问RabbitMQ的Web客户端页面)
    • [6. Web客户端页面问题](#6. Web客户端页面问题)
      • [6-1 问题展示](#6-1 问题展示)
      • [6-2 解决方案](#6-2 解决方案)

Docker下安装RabbitMQ

1. 下载Rabbitmq镜像

bash 复制代码
# 拉取最新的rabbitmq的镜像
docker pull rabbitmq

# 拉取指定版本的rabbitmq镜像
docker pull rabbitmq:版本号

# *****************************************************
# 注:若镜像拉取失败,可修改Docker镜像配置地址后重新拉取
#		1. 修改Docker的配置文件  /etc/docker/daemon.json
				sudo vim /etc/docker/daemon.json
#		2. 在打开的配置文件中,添加registry-mirrors字段,更改Docker的默认镜像仓库
				{
				    "registry-mirrors": [
				        "https://docker.m.daocloud.io"
				    ]
				}
#		3. 重新加载Docker的配置
				sudo systemctl daemon-reload
# 		4. 重启Docker服务
				sudo systemctl restart docker
# *****************************************************

2. 创建并运行RabbitMQ容器

bash 复制代码
docker run -d -p 15672:15672 -p 5672:5672 \
        --restart=always \
        -e RABBITMQ_DEFAULT_VHOST=my_vhost  \
        -e RABBITMQ_DEFAULT_USER=admin \
        -e RABBITMQ_DEFAULT_PASS=admin \
        --hostname myRabbit \
        --name rabbitmq-new\
        rabbitmq:latest

# 参数说明:
# -d:表示在后台运行容器;
# -p:将主机的端口 15673(Web访问端口号)对应当前rabbitmq容器中的 15672 端口,将主机的5674(应用访问端口)端口映射到# # rabbitmq中的5672端口;
# --restart=alawys:设置开机自启动
# -e:指定环境变量:
#     RABBITMQ_DEFAULT_VHOST:默认虚拟机名;
#     RABBITMQ_DEFAULT_USER:默认的用户名;
#     RABBITMQ_DEFAULT_PASS:默认的用户密码;
# --hostname:指定主机名(RabbitMQ 的一个重要注意事项是它根据所谓的 节点名称 存储数据,默认为主机名);
# --name rabbitmq-new:设置容器名称;

3. 查看启动情况

bash 复制代码
docker ps

4. 启动RabbitMQ访问的Web客户端

4-1 方法一 进入容器开启

bash 复制代码
# 1. 进入rabbitmq容器
docker exec -it 容器名/容器id /bin/bash
# 2. 开启web客户端
rabbitmq-plugins enable rabbitmq_management

4-2 方法二 直接开启

bash 复制代码
docker exec -it 容器名/容器id rabbitmq-plugins enable rabbitmq_management

5. 浏览器访问RabbitMQ的Web客户端页面

bash 复制代码
# 在浏览器上输入 ip+端口 访问rabbitmq的web页面,如:  192.168.2174.132:15672,跳转至rabbitmq的登陆页面
# 登陆用户名和密码,创建Docker容器的时候我们指定了[本例: admin/admin],按自己配置登陆即可
#					如果没有指定的话,那么rabbitmq的默认账号密码是:guest/guest
# 如果无法访问可以尝试开启防火墙 15672 端口:
firewall-cmd --zone=public --add-port=15672/tcp --permanent        
firewall-cmd --reload 

6. Web客户端页面问题

6-1 问题展示

bash 复制代码
# 问题描述:在rabbitmq的web客户端发现界面,分别点击各个页面,如点击Channels,出现如下的提示
#		会弹出如下提示框Stats in management UI are disabled on this node

6-2 解决方案

bash 复制代码
# 1. 进入到启动的rabbitmq的容器中
#		docker exec -it 容器名称/容器id /bin/bash
	docker exec -it rabbitmq-new /bin/bash
# 2. 切换到rabbitmq的配置文件目录
	cd /etc/rabbitmq/conf.d/
# 3. 修改配置文件- management_agent.disable_metrics_collector.conf
	echo management_agent.disable_metrics_collector = false > management_agent.disable_metrics_collector.conf
# 4. 查看配置文件
	cat management_agent.disable_metrics_collector.conf		
# 5. 退出容器
	exit
# 6. 重启容器
	# docker restart 容器名称/容器id
	docker restart rabbitmq-new
# 7. 再次进入rabbitmq的web客户端页面,点击各个页面就不会出现那个提示,
#				并且出现了统计图表以及可以添加一下展示的信息字段。	

docker安装Rabbitmq教程(详细图文)

相关推荐
稚辉君.MCA_P8_Java1 天前
Gemini永久会员 containerd部署java项目 kubernetes集群
后端·spring cloud·云原生·容器·kubernetes
2501_941804321 天前
Java在高并发互联网服务开发中的架构设计与性能优化实践全景分享
rabbitmq
努力发光的程序员1 天前
互联网大厂Java面试:从Spring Boot到微服务架构
spring boot·缓存·微服务·消息队列·rabbitmq·spring security·安全框架
2501_941147421 天前
基于 Kotlin 与 Ktor 构建高并发微服务与异步分布式系统实践分享
rabbitmq
一夜空中最亮的星一1 天前
【Linux】ubuntu24.04 安装docker
linux·docker·eureka
炸裂狸花猫1 天前
开源域名证书工具 - cert-manager
云原生·容器·kubernetes·开源·cert-manager
会飞的小蛮猪1 天前
Ubuntu24.04基于Docker部署K8s(使用私服部署)
经验分享·docker·云原生·容器·kubernetes
debug骑士1 天前
面向云原生微服务的Go高并发架构实践与性能优化工程化经验分享案例研究
rabbitmq
2501_941802481 天前
Java高性能微服务架构与Spring Boot实战分享:分布式服务设计、负载均衡与优化经验
rabbitmq
weixin_436525071 天前
使用 idea 命令行构建 Docker 镜像并部署到云服务器
linux·docker·github