Docker安装部署RabbitMQ & 密码修改 &创建用户及角色

文章目录

    • 1.查询镜像
    • 2.获取镜像
    • 3.运行镜像
        • [3.1 运行方式一:默认guest用户,密码也是guest](#3.1 运行方式一:默认guest用户,密码也是guest)
        • [3.2 运行方式二:设置用户名和密码](#3.2 运行方式二:设置用户名和密码)
    • 4.RabbitMQ的密码修改
        • [4.1 进入 Docker 容器](#4.1 进入 Docker 容器)
        • [4.2 查看当前用户列表](#4.2 查看当前用户列表)
        • [4.3 修改密码](#4.3 修改密码)
    • 5.创建用户并设置角色
        • [5.1 创建管理员用户](#5.1 创建管理员用户)
        • [5.2 创建RabbitMQ监控用户](#5.2 创建RabbitMQ监控用户)
        • [5.3 创建某个项目的专用用户](#5.3 创建某个项目的专用用户)

1.查询镜像

bash 复制代码
docker search rabbitmq:management 

2.获取镜像

bash 复制代码
docker pull rabbitmq:management

3.运行镜像

3.1 运行方式一:默认guest用户,密码也是guest
bash 复制代码
docker run -d -p 5672:5672 -p 15672:15672 --name rabbitmq rabbitmq:management
3.2 运行方式二:设置用户名和密码
bash 复制代码
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:镜像名

  • RABBITMQ_DEFAULT_VHOST=my_vhost,my_vhost名字请记好,在之后的编程中要用到,如果启动时没指定,默认值为/
  • 查看日志
bash 复制代码
docker logs my-rabbitmq 

4.RabbitMQ的密码修改

4.1 进入 Docker 容器
bash 复制代码
docker exec -it rabbitmq bash

其中 rabbitmq 是自己的容器中 RabbitMQ 的名称,可通过 docker ps -a 进行查看,然后替换自己容器中的 名称 即可

4.2 查看当前用户列表

命令:rabbitmqctl list_users

bash 复制代码
root@myRabbit:/# rabbitmqctl list_users
Listing users ...
user    tags
admin   [administrator]
4.3 修改密码

命令:rabbitmqctl change_password username 'NewPassword'

username:对应不同用户映射的密码,比如需要修改管理员 admin 的密码那么就填 admin

NewPassword:直接写你的新密码即可

bash 复制代码
root@myRabbit:/#  rabbitmqctl  change_password  admin  '17231547026'
Changing password for user "admin" ...

5.创建用户并设置角色

5.1 创建管理员用户

创建管理员用户,负责整个MQ的运维,例如:

bash 复制代码
$sudo rabbitmqctl add_user  user_admin  passwd_admin

赋予其administrator角色:

bash 复制代码
$sudo rabbitmqctl set_user_tags user_admin administrator
5.2 创建RabbitMQ监控用户

创建RabbitMQ监控用户,负责整个MQ的监控,例如:

bash 复制代码
$sudo rabbitmqctl add_user  user_monitoring  passwd_monitor

赋予其monitoring角色:

bash 复制代码
$sudo rabbitmqctl set_user_tags user_monitoring monitoring
5.3 创建某个项目的专用用户

创建某个项目的专用用户,只能访问项目自己的virtual hosts

bash 复制代码
$sudo rabbitmqctl  add_user  user_proj  passwd_proj

赋予其monitoring角色:

bash 复制代码
$sudo rabbitmqctl set_user_tags user_proj management

创建和赋角色完成后查看并确认:

bash 复制代码
$sudo rabbitmqctl list_users

查看权限:

bash 复制代码
$sudo rabbitmqctl list_user_permissions user_admin

不要停止奔跑,不要回顾来路,来路无可眷恋,值得期待的只有前方。


相关推荐
顾默@2 分钟前
双系统Ubuntu18.04升级22.04,安装docker进行openclaw安装
运维·docker·容器
木卫二号Coding5 分钟前
打包容器有两种方式
docker
蜀道山老天师1 小时前
Docker Compose 多容器编排实战:LNMP、Tomcat 集群、云桌面、Portainer、Zabbix 一键部署
运维·docker·容器·tomcat·zabbix
“码”力全开2 小时前
解构企业级安防中台:基于Docker容器化与GB28181/RTSP多协议汇聚的边缘计算AI视频管理平台(全量源码交付)
人工智能·docker·边缘计算
见牛羊2 小时前
docker理解
java·docker·容器
tellmewhoisi3 小时前
Docker Compose最巧妙的设计之一——内置的服务发现机制
docker·服务发现
AI服务老曹3 小时前
解耦异构算力:基于 Docker 与 GB28181/RTSP 的边缘计算 AI 视频管理平台架构设计(支持源码交付)
人工智能·docker·边缘计算
ai产品老杨3 小时前
深度解析:基于 Docker 与边缘计算的 AI 视频管理平台架构——打通 GB28181/RTSP 协议,支持全量源码交付与异构部署
人工智能·docker·边缘计算
朝阳5814 小时前
MySQL 主从复制 — Docker 双机灾备方案
数据库·mysql·docker
ai产品老杨5 小时前
【架构实战】如何基于 Docker 与边缘计算构建企业级 AI 视频管理平台?打通 GB28181/RTSP 统一接入与异构算力调度,全量源码交付破解集成痛点
人工智能·docker·架构