欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

RabbitMQ安装及使用

程序员文章站 2022-07-15 08:10:29
...

docker安装方式

RabbitMQ官网地址:https://www.rabbitmq.com/

注意获取镜像的时候要获取management版本的,不要获取last版本的,management版本的才带有管理界面

1.查询镜像  

docker search rabbitmq:management

 2.获取镜像

 docker pull rabbitmq:management

 3.运行镜像

#方式一:默认guest用户,密码也是guest
docker run -d -p 5672:5672 -p 15672:15672 --name rabbitmq rabbitmq:management
#方式二:设置用户名和密码
docker run -d \
   --name my-rabbitmq \
   -p 5672:5672 -p 15672:15672 \
   -v /data:/var/lib/rabbitmq \
   --hostname my-rabbitmq-host \
   -e RABBITMQ_DEFAULT_VHOST=my_vhost \
   -e RABBITMQ_DEFAULT_USER=admin \
   -e RABBITMQ_DEFAULT_PASS=admin \
   --restart=always \
   rabbitmq:management

参数说明:

   -d:后台运行容器

   -name:指定容器名

   -p:指定服务运行的端口(5672:应用访问端口;15672:控制台Web端口号)

   -v:映射目录或文件,启动了一个数据卷容器,数据卷路径为:/var/lib/rabbitmq,再将此数据卷映射到住宿主机的/data目录

   --hostname:主机名(RabbitMQ的一个重要注意事项是它根据所谓的 “节点名称” 存储数据,默认为主机名)

   -e:指定环境变量;(RABBITMQ_DEFAULT_VHOST:默认虚拟机名;RABBITMQ_DEFAULT_USER:默认的用户名;RABBITMQ_DEFAULT_PASS:默认用户名的密码)

   --restart=always:当Docker重启时,容器能自动启动   

   rabbitmq:management:镜像名

注1:RABBITMQ_DEFAULT_VHOST=my_vhost,my_vhost名字请记好,在之后的编程中要用到,如果启动时没指定,默认值为/

注2:容器启动后,可以通过docker logs 窗口ID/容器名字查看日志

        docker logs my-rabbitmq    

注3:停止并删除所有容器

        docker stop $(docker ps -aq) && docker rm $(docker ps -aq)

RabbitMQ安装及使用

4.进入RabbitMQ管理平台进行相关操作

访问Linux主机IP+端口登录进入管理界面,用户名跟密码默认都是guest

RabbitMQ安装及使用

centos安装方式 

在centos上安装RabbitMQ可参考这个:

https://www.linuxprobe.com/install-rabbitmq-on-centos-7.html

常用操作命令

命令行与管控台(基础操作):

rabbitmqctl stop_app:关闭应用
rabbitmqctl start_app:启动应用
rabbitmqctl status:节点状态
rabbitmqctl add_user username password:添加用户
rabbitmqctl list_users:列出所有用户
rabbitmqctl delete_user username:删除用户
rabbitmqctl clear_permissions -p vhostpath username:清除用户权限
rabbitmqctl list_user_permissions username:列出用户权限
rabbitmqctl change_password username newpassword:修改密码
rabbitmqctl set_permissions -p vhostpath username “.*” “.*” “.*”
rabbitmqctl add_vhost vhostpath:创建虚拟主机
rabbitmqctl list_vhosts:列出所有虚拟主机
rabbitmqctl list_permissions -p vhostpath:列出虚拟主机上所有权限
rabbitmqctl delete_vhost vhostpath:删除虚拟主机
rabbitmqctl list_queues:查看所有队列信息
rabbitmqctl -p vhostpath purge_queue blue:清除队列里的消息

命令行与管控台(高级操作):

rabbitmqctl reset:移除所有数据,要在rabbitmqctl stop_app之后使用
rabbitmqctl join_cluster <clustermode> [--ram]:组成集群命令
rabbitmqctl cluster_status:查看集群状态
rabbitmqctl change_cluster_node_type disc | ram:修改集群节点的存储形式
rabbitmqctl forget_cluster_node {--offline}:忘记节点(摘除节点)
rabbitmqctl rename_cluster_node oldnode1 newnode1 [oldnode2] [newnode2...]:修改节点名称