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教程(详细图文)

相关推荐
YC运维13 小时前
Dockerfile实战案例详解
运维·docker·容器
小灰灰的可爱无人可替代17 小时前
记录一次使用docker和docker-compose更新vue前端项目问题
nginx·docker·vue
荣光波比1 天前
K8S(一)—— 云原生与Kubernetes(K8S)从入门到实践:基础概念与操作全解析
云原生·容器·kubernetes
伞啊伞1 天前
K8s概念基础(一)
云原生·容器·kubernetes
hello_2501 天前
k8s基础监控promql
云原生·容器·kubernetes
小杨的全栈之路1 天前
生产级实践:在 Docker 中安全导入自签名证书,保障 Spring Boot 应用通信安全
docker·https
静谧之心1 天前
在 K8s 上可靠运行 PD 分离推理:RBG 的设计与实现
云原生·容器·golang·kubernetes·开源·pd分离
计算机小手1 天前
推荐一个 GitHub 开源项目信息卡片生成工具,支持Docker快速部署和API调用
经验分享·docker·github·开源软件
饭来_1 天前
通过 SSH 远程连接 docker 容器
vscode·docker·ssh
一叶飘零_sweeeet1 天前
从 0 到 1 搭建实时数据看板:RabbitMQ+WebSocket 实战指南
java·websocket·rabbitmq·数据看板