Mac 安装 RabbitMQ

news/2024/10/9 0:43:49

一般来说,安装分为两种方式:

  1. 通过 brew 命令安装。在这里,推荐使用 brew 来安装,非常强大的 Mac 端包管理工具。
  2. 下载 RabbitMQ 源文件,解压源文件之后进行安装。
  3. Docker启动

一、brew 命令安装Mac安装 RabbitMQ

1、安装 erlang

brew install erlang

2、安装 rabbitmq

brew install rabbitmq

3、配置 RabbitMQ 环境变量

vi ~/.bash_profile

添加

export RABBIT_HOME=/usr/local/Cellar/rabbitmq/3.12.12
export PATH=$PATH:$RABBIT_HOME/sbin

更新配置

source ~/.bash_profile

4、安装 RabiitMQ 的可视化监控插件

cd /opt/homebrew/Cellar/rabbitmq/3.13.2/sbin
sudo rabbitmq-plugins enable rabbitmq_management

5、后台启动 RabbitMQ

sudo rabbitmq-server -detached 

查看状态

sudo rabbitmqctl status

访问可视化监控插件的界面

http://localhost:15672

默认的用户名密码都是 guest,登录后可以在 Admin 那一列菜单内添加自己的用户
image

后台关闭

rabbitmqctl stop

二、下载 RabbitMQ 源文件安装 RabbitMQ

下载地址(https://www.rabbitmq.com/docs/install-generic-unix)
image

文件目录下,分别执行以下命令 ※注意分别执行

xz -d rabbitmq-server-generic-unix-3.12.12.tar.xz
tar xvf rabbitmq-server-generic-unix-3.12.12.tar -C /home/esaas/rabbitmq

执行以下命令编辑 rabbitmq.env.conf

vim etc/rabbitmq/rabbitmq.env.conf 

加入以下配置。将目录替换为自己的目录。并在rabbitmq_server-3.12.12 下创建data目录

#node nameNODENAME=rabbit#data dirMNESIA_BASE=/你的目录/rabbitmq_server-3.12.12/data

编辑配置文件rabbitmq.conf

vim etc/rabbitmq/rabbitmq.conf 

加入以下配置。将目录替换为自己的目录。并在rabbitmq_server-3.12.12 下创建logs目录

#listen portlisteners.tcp.default = 5672#log dirlog.dir =/你的目录/rabbitmq_server-3.12.12/logs#open remote requestloopback_users = none

配置环境变量

sudo vim /etc/profile

加入以下内容

export RABBIT_MQ=/home/esaas/rabbitmq/rabbitmq_server-3.12.12
export PATH=$PATH:$RABBIT_MQ/sbin

使环境变量生效

source /etc/profile

安装后和以上相同操作,运行RabbitMQ

三、Docker启动

1、下载Rabbitmq的镜像

docker pull rabbitmq

拉取指定版本的rabbitmq镜像

docker pull rabbitmq:版本号

2、创建并运行rabbitmq容器

docker run -d -p 15673:15672 -p 5674:5672 \--restart=always \-e RABBITMQ_DEFAULT_VHOST=my_vhost  \-e RABBITMQ_DEFAULT_USER=admin \-e RABBITMQ_DEFAULT_PASS=admin123456 \--hostname myRabbit \--name rabbitmq-new\rabbitmq:latest

在映射的端口号的时候不要映射 5671端口,端口5671是 RabbitMQ 的默认AMQP over TLS/SSL端口。AMQP(Advanced Message Queuing Protocol)是一种消息传递协议,用于在应用程序之间进行可靠的消息传递。
参数说明:

-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、启动web客户端

方法一:进入容器开启

#进入rabbitmq容器
docker exec -it 容器名/容器id /bin/bash
#开启web客户端
rabbitmq-plugins enable rabbitmq_management

方法二:不进入容器开启

docker exec -it 容器名/容器id rabbitmq-plugins enable rabbitmq_management

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

Deepin-Docker-Memcached

目标:基于deepin+docker安装 memchaed 1.镜像下载 docker pull memcached:latest 2.容器启动 docker run -d -p 11211:11211 --name memcached-test memcached:latest 3.启动检查4.启动Ok

多区域协作时 如何实现便捷可控的文件跨域传输?

文件跨域传输的场景在现代企业运营中非常普遍,特别是在那些具有分布式结构或需要跨地域合作的组织中。 以下是一些典型的多区域文件传输场景: 1、企业内部跨地域传输:大型企业或跨国公司在不同地区设有分支机构,需要在这些分支机构之间传输业务数据和公司文件。 2、供应链…

安全数据交换系统哪个好?该如何选型?

安全数据交换系统是用于在不同网络或组织之间安全、高效地传输和共享数据的解决方案。安全数据交换系统对于任何需要处理敏感数据、确保数据安全、并满足合规要求的组织来说都是至关重要的。 这种系统通常用于以下目的: 1)数据传输:允许用户在不同的地理位置或网络环境之间…

python雨滴数浓度计算

前面已经将3232的数据删除了不需要的列,数据变成了3221的数据 excel的粒径为了匹配txt的32行数据,我进行了重复复制,将excel变成下图: 那么采用数浓度公式:代码:# -*- coding:utf-8 -*- """ @author: SuYue @file: shunongdu.py @time: 2024/04/30 @desc:…

aardio爬虫) 实战篇:逆向有道翻译web接口

前言 之前的文章把js引擎(aardio封装库) 微软开源的js引擎(ChakraCore))写好了,这篇文章整点js代码来测一下bug。测试网站:https://fanyi.youdao.com/index.html#/ 逆向思路 逆向思路可以看有道翻译js逆向(MD5加密,AES加密)附完整源码,逆向我就不赘述了。这篇文章说一下怎…

“any”类型的参数不可分配给“never”类型的参数。ts(2345)

问题引入在进行项目开发时,用到了 el-tree 标签,就是组织树状数据渲染页面,类似菜单,然后父级菜单下会有多个子菜单。本次总共就两层。这里遇到的问题是,后端返回的数据就是一个list,属于叶子节点,父级节点是固定的,需要前端写死,但就在写死了父级节点,并将叶子节点加…

ubuntu 桥接模式无法上网解决

ubuntu安装,根据个人的选择来配置网络信息,以下是vmare配置桥接模式时ubuntu无法上网的处理方式: 1. vmare-》虚拟机-》设置, 选中桥接模式(复制物理状态可以不勾选)2. vmare-》编辑-》虚拟网络编辑器, 选中更改设置 2. 选中VMnet0网卡,该网卡选中电脑目前在用的网卡名…

用php找出字符串中连续重复次数最多的字符,你有方法吗?

找出字符串中连续重复次数最多的字符,这里总结了几种方法,不管是在开发中,还是在面试中都会遇到。 方法一<?php $arr = str_split($str); //字符串分隔到数组中$arr = array_count_values($arr); //用于统计数组中所有值出现的次数,返回一个数组//键名为原数组的键值,…