# 1.Docker 安装

  • 官方镜像地址 (opens new window) https://registry.hub.docker.com/_/rabbitmq/
  • 下载 management 镜像
    • docker pull rabbitmq:management 有管理后台
  • 环境变量
    • RABBITMQ_DEFAULT_USER 用户名
    • RABBITMQ_DEFAULT_PASS 密码
    • RABBITMQ_DEFAULT_VHOST default vhost
  • 创建容器并运行
    • 设置默认账户密码
      • docker run -d --hostname my-rabbit --name some-rabbit -e RABBITMQ_DEFAULT_USER=user -e RABBITMQ_DEFAULT_PASS=password rabbitmq:management
    • 设置默认 vhost
      • docker run -d --hostname my-rabbit --name some-rabbit rabbitmq:management
    • 通用命令
      • docker run -d --hostname rabbitmq --name rabbitmq -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=admin -p 15672:15672 -p 5672:5672 rabbitmq:management
  • 主要端口
    • 4369 erlang 发现口
    • 5672 client 端通信口
    • 15672 管理界面 ui 端口
    • 25672 server 间内部通信口

# 2. Mac 安装

利用 brew 安装

brew update
brew install rabbitmq
1
2

安装成功后目录路径 /usr/local/Cellar/rabbitmq

# 3. Linux 安装(Centos7.x)

yum -y install gcc glibc-devel make ncurses-devel openssl-devel autoconf unixODBC unixODBC-devel socat wget
1

# 3.1 安装 erlang

https://packagecloud.io/rabbitmq/erlang

curl -s https://packagecloud.io/install/repositories/rabbitmq/erlang/script.rpm.sh | bash
或
wget --content-disposition https://packagecloud.io/rabbitmq/erlang/packages/el/7/erlang-23.3.4.8-1.el7.x86_64.rpm/download.rpm

yum -y install erlang-23.3.4.8-1.el7.x86_64.rpm
1
2
3
4
5

验证下erlang是否安装成功

[root@6a305b1d6673 src]# erl
Erlang/OTP 23 [erts-11.2.2.7] [source] [64-bit] [smp:2:2] [ds:2:2:10] [async-threads:1] [hipe]

Eshell V11.2.2.7  (abort with ^G)
1
2
3
4

# 3.2 安装 rabbitmq-server

https://github.com/rabbitmq/rabbitmq-server/releases

https://packagecloud.io/rabbitmq/rabbitmq-server/packages/el/7/rabbitmq-server-3.9.10-1.el7.noarch.rpm

curl -s https://packagecloud.io/install/repositories/rabbitmq/rabbitmq-server/script.rpm.sh |  bashwget --content-disposition https://packagecloud.io/rabbitmq/rabbitmq-server/packages/el/7/rabbitmq-server-3.9.10-1.el7.noarch.rpm/download.rpm

yum install rabbitmq-server-3.9.10-1.el7.noarch
systemctl start rabbitmq-server 
systemctl status rabbitmq-server 
systemctl restart rabbitmq-server
systemctl stop rabbitmq-server
1
2
3
4
5
6
7
8
9

# 4. 开启管理页面

rabbitmq-plugins enable rabbitmq_management
1

登录用户默认是【guest】,密码也是【guest】,在没有修改配置文件的情况下,仅可以通过 localhost 进行登录访问(如果希望其他 ip 也可以访问 guest,则需要配置 rabbitmq.config 文件,但是有些安装情况下是没有 config 文件的,需要手动创建并且导入文件内容)

正常情况下,是不会直接用 guest 用户,可以自定义用户,赋予权限后再进行操作。

创建自定义账号

图片.png 上面是通过管理页面创建的用户账号,还可以通过命令行创建账号。

rabbitmqctl add_user admin admin@1024
rabbitmqctl set_permissions -p / admin "." "." ".*"
rabbitmqctl set_user_tags admin administrator
1
2
3

设置后,可通过页面登陆(不局限于 localhost)

更多管理界面配置问题,可参考官网:https://www.rabbitmq.com/access-control.html (opens new window)

PHP可通过 composer 安装包进行操作rabbitmq。https://github.com/php-amqplib/php-amqplib (opens new window)

composer require php-amqplib/php-amqplib -vvv
1