docker安装RabbitMQ

rabbitMQ是一款开源的高性能消息中间件,最近项目要使用,于是使用docker搭建,快速方便。

一、获取镜像

  1. 使用docker search rabbitMq命令获取镜像列表,结果如下
    镜像搜索
    2.使用docker pull docker.io/rabbitmq:3.8-management 拉取镜像,我们选择了STARS数最多的官方镜像,此处需要注意,默认rabbitmq镜像是不带web端管理插件的,所以指定了镜像tag为3.8-management,表示下载包含web管理插件版本镜像,其它Tag版本可以访问DockerHub查询
    在这里插入图片描述

二、创建rabbitMq容器

1.使用docker images获取查看rabbitMQ镜像ID,我的是4b23cfb64730
镜像ID2.执行docker run --name rabbitmq -d -p 15672:15672 -p 5672:5672 4b23cfb64730命令创建rabbitMq容器,关于其中的参数含义如下:

  • –name指定了容器名称
  • -d 指定容器以后台守护进程方式运行
  • -p指定容器内部端口号与宿主机之间的映射,rabbitMq默认要使用15672为其web端界面访问时端口,5672为数据通信端口

命令执行完毕后,docker会使用ID为 4b23cfb64730的镜像创建容器,创建完成后返回容器ID为3ae75edc48e2416292db6bcae7b1054091cb9f776a270e35634d6d7d152fb876
3.执行docker ps可以查看正在运行的容器,我们能看到rabbitMq已经运行
创建成功3.查看容器日志
使用docker logs -f 容器ID命令可以查看容器日志,我们执行docker logs -f 3ae命令查看rabbitMq在启动过程中日志,3ae是容器ID的简写——容器ID太长,使用时其写前几位即可
启动日志从日志可以看出,rabbitMq默认创建了guest用户,并且赋予administrator角色权限,同时服务监听5672端口TCP连接和15672端口的HTTP连接,至此说明安装成功。

三、访问rabbitMq

1.访问web界面
在浏览器,输入你的主机Ip:15672回车即可访问rabbitMq的Web端管理界面,默认用户名和密码都是guest,如图出现如下界面代表已经成功了。
在这里插入图片描述2.新添加一个账户
默认的guest 账户有访问限制,默认只能通过本地网络(如 localhost) 访问,远程网络访问受限,所以在使用时我们一般另外添加用户,例如我们添加一个root用户:

①执行docker exec -i -t 3ae bin/bash进入到rabbitMq容器内部

[root@localhost docker]# docker exec -i -t 3a bin/bash
root@3ae75edc48e2:/# 

②执行rabbitmqctl add_user root 123456 添加用户,用户名为root,密码为123456

root@3ae75edc48e2:/# rabbitmqctl add_user root 123456 
Adding user "root" ...

③执行abbitmqctl set_permissions -p / root ".*" ".*" ".*" 赋予root用户所有权限

root@3ae75edc48e2:/# rabbitmqctl set_permissions -p / root ".*" ".*" ".*"
Setting permissions for user "root" in vhost "/" ...

④执行rabbitmqctl set_user_tags root adminstrator赋予root用户adminstrator角色

root@3ae75edc48e2:/# rabbitmqctl set_user_tags root adminstrator
Setting tags for user "root" to [adminstrator] ...

⑤执行rabbitmqctl list_users查看所有用户即可看到root用户已经添加成功

root@3ae75edc48e2:/# rabbitmqctl list_users
Listing users ...
user	tags
guest	[administrator]
root	[administrator]

执行exit命令,从容器内部退出即可。这时我们使用root账户登录web界面也是可以的。
到此,rabbitMq的安装就结束了,接下里就是愉快的代码开发啦!

### 如何使用 Docker 安装 RabbitMQ 的最佳实践 #### 创建挂载目录 为了确保数据持久化以及便于管理配置文件,在宿主机上创建专用的挂载目录是非常重要的。例如,可以在 Linux 系统中执行以下命令来创建并授权一个专门用于 RabbitMQ 数据存储的目录[^2]。 ```bash sudo mkdir -p /usr/local/docker/rabbitmq && sudo chmod 777 /usr/local/docker/rabbitmq ``` 此操作不仅提供了安全的数据保存路径,还允许容器内的 RabbitMQ 进程能够正常读写这些数据。 #### 部署单机版 RabbitMQ 启动 RabbitMQ 容器可以通过 `docker run` 命令完成。下面是一个典型的运行命令示例: ```bash docker run -d \ --name rabbitmq-server \ -p 5672:5672 \ -p 15672:15672 \ -v /usr/local/docker/rabbitmq/data:/var/lib/rabbitmq \ -v /usr/local/docker/rabbitmq/log:/var/log/rabbitmq \ rabbitmq:management ``` 上述命令中的参数解释如下: - `-d`: 后台模式运行容器。 - `--name rabbitmq-server`: 设置容器名称为 `rabbitmq-server`。 - `-p 5672:5672`: 将 RabbitMQ 默认消息端口映射到本地。 - `-p 15672:15672`: 映射 Web 管理界面端口至本机。 - `-v ...`: 使用之前创建的挂载目录分别绑定日志和数据卷[^1]。 #### 初始化与重置 RabbitMQ 节点 如果需要初始化或者重新配置某个 RabbitMQ 实例,则可通过进入容器内部执行相关命令实现。比如停止应用、清除状态再重启服务等操作可按如下方式处理[^3]: ```bash docker exec -it myrabbit1 bash rabbitmqctl stop_app rabbitmqctl reset rabbitmqctl start_app exit ``` #### 构建高可用集群环境 对于生产环境中构建多节点组成的 RabbitMQ 高可用集群来说,除了单独部署多个实例外还需要让它们彼此之间形成协作关系。假设已经存在名为 `myrabbit1` 和 `myrabbit2` 的两个节点,那么新增加第三个节点 (`myrabbit3`) 加入该集群的具体方法如下所示[^4]: ```bash docker exec -it myrabbit3 bash rabbitmqctl stop_app rabbitmqctl reset rabbitmqctl join_cluster --ram rabbit@rabbit1 rabbitmqctl start_app exit ``` 以上步骤展示了从基础安装到高级集群搭建整个过程中涉及的关键环节和技术要点。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值