如果是在物理机或者虚拟机以及云环境中搭建一个RabbitMq的话需要装很多环境,比如Erlang。那么如果用Docker搭建就简单的多。
前提基础:环境中已经安装了docker。
一、安装(拉取)RabbitMq镜像。
我们现在一个版本,3.11,并且带web控制面板的,后面有management的才是带面板的。
docker仓库版本地址:https://hub.docker.com/_/rabbitmq
sudo docker pull rabbitmq:3.11-management
二、创建并启动容器
docker run -d --hostname rb --name rb1 -p 15672:15672 -p 5672:5672 rabbitmq
参数说明
- run :运行容器
- -d :守护
- –hostname :自定义一个主机名称,如果不自定义,系统会随机生成一个
- –name:容器名称
- -p:物理端口:容器端口。15672:是控制面板的端口,5672是RabbitMq服务的端口。
三、启动web插件
a,使用 docker ps -a 查看所有的容器。可以看到刚才运行的容器,比如我的容器ID:a7cdfe05e39c
b,进入容器:docker exec -it a7 /bin/bash :r7是我容器ID的前两个字母,因为没有其他id,r7可以确定是那个一个容器了。
c,开启插件:rabbitmq-plugins enable rabbitmq_management
这样就可以打开web管理界面了 http://ip地址:5672
四、添加账号
系统默认是guest账号,其实我们可以自己来添加一个账号,以下是在容器里操作的哦。
a,添加一个虚拟主机: rabbitmqctl add_vhost host1 host1是虚拟主机名称,可以自定义的。
b,添加账号:rabbitmqctl add_user admin 123456 admin是账号,123456是密码
c,开启管理权限:rabbitmqctl set_user_tags admin management admin是刚才添加的账号
这样我们就可以在【三】中登录了。
用户的四种角色:
management
用户可以通过AMQP做的任何事外加:
列出自己可以通过AMQP登入的virtual hosts
查看自己的virtual hosts中的queues, exchanges 和 bindings
查看和关闭自己的channels 和 connections
查看有关自己的virtual hosts的“全局”的统计信息,包含其他用户在这些virtual hosts中的活动。
policymaker
management可以做的任何事外加:
查看、创建和删除自己的virtual hosts所属的policies和parameters
monitoring
management可以做的任何事外加:
列出所有virtual hosts,包括他们不能登录的virtual hosts
查看其他用户的connections和channels
查看节点级别的数据如clustering和memory使用情况
查看真正的关于所有virtual hosts的全局的统计信息
administrator
policymaker和monitoring可以做的任何事外加:
创建和删除virtual hosts
查看、创建和删除users
查看创建和删除permissions
关闭其他用户的connections