rabbitmq部署(docker方式)

前言:rabbitmq一旦有漏洞,版本升级麻烦,于是改为docker部署
环境:centos7

#停掉之前的服务

systemctl stop rabbitmq-server

systemctl disable rabbitmq-server

查了官网,当前3.11.x 最高版本是3.11.19, 虽然3.12.x已出,还是继续用3.11.x
于是使用镜像 rabbitmq:3.11.19-management

#拉取镜像
docker pull rabbitmq:3.11.19-management

#运行

docker run -d --hostname mq --name rabbitmq -p 15672:15672 -p 5672:5672 -p 1883:1883 -p 15675:15675 -v /opt/common/rabbitmq/etc:/etc/rabbitmq -v /opt/common/rabbitmq/lib:/var/lib/rabbitmq -v /opt/rabbitmq/log:/var/log/rabbitmq -e TZ=Asia/Shanghai rabbitmq:3.11.19-management

查看日志,如果有文件夹权限问题,则可能是映射文件夹权限,则看看该容器是什么用户,然后设置为该用户所属就行。
chown -R polkitd:input /opt/common/rabbitmq/

在这里插入图片描述

#运行成功之后启动插件

docker exec rabbitmq rabbitmq-plugins enable rabbitmq_management

docker exec rabbitmq rabbitmq-plugins enable rabbitmq_web_mqtt

docker exec rabbitmq rabbitmq-plugins enable rabbitmq_mqtt

#创建账号,进入容器内操作

docker exec -it rabbitmq bash

#进入容器后做以下操作------------start--------------------

#查看用户列表

rabbitmqctl list_users

#添加用户admin

rabbitmqctl add_user admin Abc123$%^

#admin 设置为Administrator

rabbitmqctl set_user_tags admin administrator

#设置权限,允许访问vhost “/”

rabbitmqctl set_permissions -p “/” admin “." ".” “.*”

#也可以新增vhost,例如增加myhost:rabbitmqctl add_vhost myhost,然后加入权限rabbitmqctl set_permissions -p “myhost” admin “." ".” “.*”

#顺手修改一下guest密码,guest默认不可远程连接(只能localhost)

rabbitmqctl change_password guest Admin_mq@1024

#执行exit,退出容器----------------end-----------------------

#开放外部访问:

firewall-cmd --permanent --add-rich-rule=“rule family=“ipv4” source address=“10.10.5.1/24” port protocol=“tcp” port=“1883” accept”
firewall-cmd --permanent --add-rich-rule=“rule family=“ipv4” source address=“10.10.5.1/24” port protocol=“tcp” port=“5672” accept”
firewall-cmd --permanent --add-rich-rule=“rule family=“ipv4” source address=“10.10.5.1/24” port protocol=“tcp” port=“15672” accept”

firewall-cmd --reload

端口说明:

-15672 是rabbitmq management管理界面默认访问端口
-5672 是amqp默认端口
-1883 是mqtt tcp协议默认端口
-15675 是web_mqtt ws协议默认端口

最后测试登录:
http://{ip}:15672
使用admin账号登录

踩坑:
登录不成功时会出现以下错误:
undefined: There is no template at js/tmpl/error-popup.ejs undefined
(其实是提示错误,但这个错误提示模板加载不出)

解决:清除一下浏览器缓存

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/3506.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

jupyter定制数学函数

from math import * #导入绘图模块 import numpy as np #导入数值计算模块 import matplotlib.pyplot as plt #导入绘图模块 plt.rcParams[font.sans-serif][SimHei] #绘图中文 plt.rcParams[axes.unicode_minus]False #绘图负号 import mpl_toolkits.axisartist as axisartist…

微信公众平台自定义菜单 /事件推送

用户点击自定义菜单后,微信会把点击事件推送给开发者,请注意,点击菜单弹出子菜单,不会产生上报。请注意,第3个到第8个的所有事件,仅支持微信iPhone5.4.1以上版本,和Android5.4以上版本的微信用户…

react中使用redux,但是通过useEffect监听不到redux中的数据变化?

在React中使用Redux并通过useEffect监听Redux中的数据变化时,需要使用react-redux库中的useSelector钩子来选择需要监听的Redux状态。useSelector函数允许您从Redux存储中选择和获取特定的状态。 以下是一种在React组件中使用Redux,并通过useEffect监听…

安卓通过adb pull和adb push 手机与电脑之间传输文件

1.可以参考这篇文章 https://www.cnblogs.com/hhddcpp/p/4247923.html2.根据上面的文章,我做了如下修改 //设置/system为可读写: adb remount //复制手机中的文件到电脑中。需要在电脑中新建一个文件夹,我新建的文件夹为ce文件夹 adb pull …

如何在无人机支持下完成自然灾害风险评估的原理和方法

对灾害的损失进行估算与测算是制定防灾、抗灾、救灾 及灾后重建方案的重要依据。 自然灾害评估按灾害客观地发展过程可分三种:一是灾前预评估,二是灾期跟踪或监测性评估,三是灾后实测评估。 灾前预评估要考虑三个因素,第一是未来…

基于ssm的社区生活超市的设计与实现

博主介绍:专注于Java技术领域和毕业项目实战。专注于计算机毕设开发、定制、文档编写指导等,对软件开发具有浓厚的兴趣,工作之余喜欢钻研技术,关注IT技术的发展趋势,感谢大家的关注与支持。 技术交流和部署相关看文章…

JVM系列(5)——类加载过程

一、类的生命周期 加载(Loading)、验证(Verification)、准备(Preparation)、解析(Resolution)、初始化(Initialization)、使用(Using&#xff09…

Ceph集群

目录 一、存储概述 1.单机存储设备 1.1 DAS 1.2 NAS 1.3 SAN 2. 单机存储的问题 3. 商业存储解决方案 4.分布式存储(软件定义的存储 SDS) 4.1 分布式存储的类型 二、Ceph简介 1.Ceph 优势 2. Ceph 架构 2.1 RADOS 基础存储系统 2.2 LIBRADOS…

C# 操作Ini文件

C# 操作Ini文件 public class IniHelper {[System.Runtime.InteropServices.DllImport("kernel32")]private static extern long WritePrivateProfileString(string section, string key, string val, string filePath);[System.Runtime.InteropServices.DllImport(…

十大网络安全上市公司分析,让我们重点聊聊F5

网络安全上市厂商业务广泛分布于网络安全硬件、软件,网络安全服务等板块,总体来看,十大网络安全上市公司的竞争可谓是如火如荼。今天让我们把目光集中在F5,这个能为我们所有人创造更安全的数字世界的企业,在应用及API交…

从零搭建vue+electron桌面应用

从零搭建vueelectron桌面应用 一、准备工作1.全局下载electron2.全局下载vue脚手架3.创建vue项目(这里用的是vue2版本)4.安装打包插件5.安装electron-builder,安装后可以直接生成主进程的配置文件6.在vue.config.js中添加以下配置 二、运行项…

ucore lab1

ucore lab1 练习1:理解通过make生成执行文件的过程。(要求在报告中写出对下述问题的回答) 1 .操作系统镜像文件ucore.img是如何一步一步生成的?(需要比较详细地解释Makefile中每一条相关命令和命令参数的含义,以及说…

left join 和except方法区别和联系

目录 相同点: left join except 不同点 假设有两个表:A客户表 和 B客户表,客户uid是唯一主键 相同点: 查询在A中的客户 但不在B中,也就是图中的阴影部分,left join 和except方法都可以实现 left join …

使用IDEA社区版创建SpringBoot项目

文章目录 1.关于IDEA社区版的版本2.下载Spring Boot Helper3.创建项目4.配置Maven国内源4.1找不到settings.xml的情况4.2找得到settings.xml的情况 4.3删除repository目录下的所有文件和目录5.加载项目6.解决org.springframework.boot:spring-boot-starter-parent:pom:2.7.13.R…

laravel 的SQL使用正则匹配

案例场景 精准正则匹配 查询结果 代码如下 $regexp ^ . $new_str . [^0-9];$info Test::query()->where(is_del, 0)->whereRaw("name REGEXP $regexp")->pluck(name, id)->toArray();字符 “^” 匹配以特定字符或者字符串开头的文本 name 字段值包含…

记一次搞崩ubuntu系统的经历

本来想在ubuntu系统上安装一个windows系统,没想成在对磁盘进行分区的时候出错了,导致进入了grub模型,一直出不来, 过程中一些很好的链接放上来哈 市面上很少有的基于linux系统安装另外一个系统的(感觉是非常靠谱的&…

php做网页版剪刀石头布的功能

实例讲述了php实现的网页版剪刀石头布攻略在玩游网上的设计。分享给大家供大家参考&#xff0c;具体如下&#xff1a; <?php /* * Created on 2016-11-25 * */ if (isset($_POST[sub])) { $what $_POST[what]; //需要输入的数组 $my_array array("剪刀","…

数据可视化揭示人口趋势:从数字到图像的转变

人口是一个关乎我们生活的重要话题&#xff0c;而数据可视化技术为我们提供了一种全新的方式来理解和解读人口变化的趋势。通过将大量的人口数据转化为直观的图表和图像&#xff0c;数据可视化帮助我们更好地观察、分析和解释人类发展的重要特征。 数据可视化揭示人口趋势的第一…

Spring @RequestMapping 工作原理

Spring RequestMapping 工作原理 配置基础启动类及Controller类 SpringBootApplication public class DemoServiceApplication {public static void main(String[] args) {SpringApplication.run(DemoServiceApplication.class, args);} }RestController public class HelloC…

SQLite指令

一、创建数据库 方式一&#xff1a; 1. sqlite3 进入数据库 2. .open test.db 3. .quit 数据库退出后在命令当前路径创建数据库 test.db 方式二&#xff1a; sqlite3 test.db // 在命令运行当前窗口创建数据库 test.db 在数据库命令下 .databases // 列出…