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

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

1.查询镜像

docker search rabbitmq:management 

2.获取镜像

docker pull rabbitmq:management

3.运行镜像

3.1 运行方式一:默认guest用户,密码也是guest
docker run -d -p 5672:5672 -p 15672:15672 --name rabbitmq rabbitmq:management
3.2 运行方式二:设置用户名和密码
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名字请记好,在之后的编程中要用到,如果启动时没指定,默认值为/
  • 查看日志
docker logs my-rabbitmq 

4.RabbitMQ的密码修改

4.1 进入 Docker 容器
docker exec -it rabbitmq bash

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

4.2 查看当前用户列表

命令:rabbitmqctl list_users

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

命令:rabbitmqctl change_password [username] ‘[NewPassword]’

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

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

root@myRabbit:/#  rabbitmqctl  change_password  admin  '17231547026'
Changing password for user "admin" ...

5.创建用户并设置角色

5.1 创建管理员用户

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

$sudo rabbitmqctl add_user  user_admin  passwd_admin

赋予其administrator角色:

$sudo rabbitmqctl set_user_tags user_admin administrator
5.2 创建RabbitMQ监控用户

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

$sudo rabbitmqctl add_user  user_monitoring  passwd_monitor

赋予其monitoring角色:

$sudo rabbitmqctl set_user_tags user_monitoring monitoring
5.3 创建某个项目的专用用户

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

$sudo rabbitmqctl  add_user  user_proj  passwd_proj

赋予其monitoring角色:

$sudo rabbitmqctl set_user_tags user_proj management

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

$sudo rabbitmqctl list_users

查看权限:

$sudo rabbitmqctl list_user_permissions user_admin


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


相关实践学习
消息队列RocketMQ版:基础消息收发功能体验
本实验场景介绍消息队列RocketMQ版的基础消息收发功能,涵盖实例创建、Topic、Group资源创建以及消息收发体验等基础功能模块。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
目录
打赏
0
0
0
0
37
分享
相关文章
Docker部署RocketMQ5.2.0集群
本文详细介绍了如何使用Docker和Docker Compose部署RocketMQ 5.2.0集群。通过创建配置文件、启动集群和验证容器状态,您可以快速搭建起一个RocketMQ集群环境。希望本文能够帮助您更好地理解和应用RocketMQ,提高消息中间件的部署和管理效率。
262 91
gitea docker 快捷安装部署
通过Docker快速部署Gitea,可以大大简化安装过程,确保系统环境的稳定性与一致性。使用Docker Compose管理容器,使得Gitea的维护和升级更加方便。通过定期备份数据,确保在需要时可以快速恢复。这个部署方案适合各种规模的开发团队,特别是希望通过自托管方式管理代码库的用户。
48 24
Docker在现代软件开发中扮演着重要角色,通过Dockerfile自动化构建Docker镜像,实现高效、可重复的构建过程。
Docker在现代软件开发中扮演着重要角色,通过Dockerfile自动化构建Docker镜像,实现高效、可重复的构建过程。Dockerfile定义了构建镜像所需的所有指令,包括基础镜像选择、软件安装、文件复制等,极大提高了开发和部署的灵活性与一致性。掌握Dockerfile的编写,对于提升软件开发效率和环境管理具有重要意义。
94 9
【Docker项目实战】Docker部署RabbitMQ消息中间件
【10月更文挑战第8天】Docker部署RabbitMQ消息中间件
198 1
【Docker项目实战】Docker部署RabbitMQ消息中间件
docker swarm Worker 节点的角色
【10月更文挑战第11天】
48 3
Docker安装rabbitmq
如何使用Docker安装和配置RabbitMQ服务,包括拉取RabbitMQ镜像、创建容器、配置持久化和访问管理界面的步骤。
392 0
Docker安装rabbitmq
mall在linux环境下的部署(基于Docker容器),Docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongo
mall在linux环境下的部署(基于Docker容器),docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongodb、minio详细教程,拉取镜像、运行容器
mall在linux环境下的部署(基于Docker容器),Docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongo
Docker:docker安装部署jenkins
Docker:docker安装部署jenkins
95 0
开发者如何使用轻量消息队列MNS
【10月更文挑战第19天】开发者如何使用轻量消息队列MNS
457 12
云消息队列RabbitMQ实践解决方案评测
一文带你详细了解云消息队列RabbitMQ实践的解决方案优与劣
147 12
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等