一,docker安装RabbitMq
RabbitMQ 是一个开源的消息代理软件,广泛用于实现异步通信和应用程序解耦。
使用 Docker 容器化技术可以简化 RabbitMQ 的安装和部署过程。
以下是使用 Docker 安装 RabbitMQ 的详细步骤。
步骤 1: 安装 Docker
如果您的系统尚未安装 Docker,请访问 Docker 官网下载并安装 Docker Desktop 或 Docker Engine。
步骤 2: 拉取 RabbitMQ 镜像
打开终端或命令提示符,执行以下命令来拉取 RabbitMQ 的官方 Docker 镜像:
bash
docker pull rabbitmq:management
这个命令会从 Docker Hub 拉取带有管理界面的 RabbitMQ 镜像。
步骤 3: 运行 RabbitMQ 容器
使用如下Docker 命令运行 RabbitMQ 容器。
bash
docker run -d --name rabbitmq -p 5671:5671 -p 5672:5672 -p 4369:4369 -p 25672:25672 -p 15671:15671 -p 15672:15672 rabbitmq:management
命令参数解释:
-
docker run
:这是 Docker 的命令,用于创建并启动一个新的容器。 -
-d
:表示以守护进程模式运行容器,即在后台运行。 -
--name rabbitmq
:指定容器的名称为rabbitmq
。 -
-p 5671:5671
:将容器内部的 5671 端口映射到宿主机的 5671 端口。这个端口通常用于 RabbitMQ 的 EPMD 协议,用于节点发现和集群形成。 -
-p 5672:5672
:将容器内部的 5672 端口映射到宿主机的 5672 端口,这是 AMQP 协议的默认端口。 -
-p 4369:4369
:将容器内部的 4369 端口映射到宿主机的 4369 端口,这是 RabbitMQ 的集群节点之间的通信端口。 -
-p 25672:25672
:将容器内部的 25672 端口映射到宿主机的 25672 端口,这是 RabbitMQ 的管理插件的 HTTP 接口。 -
-p 15671:15671
:将容器内部的 15671 端口映射到宿主机的 15671 端口,这是 RabbitMQ 的管理插件的 HTTPS 接口。 -
-p 15672:15672
:将容器内部的 15672 端口映射到宿主机的 15672 端口,这是 RabbitMQ 管理界面的默认 HTTP 端口。 -
rabbitmq:management
:指定使用的 Docker 镜像名称和标签,这里是 RabbitMQ 的官方管理界面镜像。
步骤 4: 验证 RabbitMQ 容器
使用以下命令查看容器是否正在运行:
bash
docker ps
如果 RabbitMQ 容器正在运行,你会在列表中看到它。
步骤 5: 访问 RabbitMQ 管理界面
打开浏览器,访问 http://localhost:15672
。默认的登录凭证是 guest/guest
。
步骤 6: 配置 RabbitMQ
在管理界面中,你可以执行以下操作:
- 创建新的用户和虚拟主机。
- 设置用户权限。
- 查看队列、交换器和绑定的状态。
步骤 7: 使用 RabbitMQ
现在 RabbitMQ 已经安装并运行,你可以开始使用它来发送和接收消息了。你可以使用任何支持 AMQP 协议的客户端库来与 RabbitMQ 交互。
步骤 8: 停止和删除 RabbitMQ 容器
当你完成测试或需要停止 RabbitMQ 服务时,可以使用以下命令:
bash
docker stop rabbitmq-server
如果需要删除容器,可以使用以下命令:
bash
docker rm rabbitmq-server
步骤 9: 持久化数据
默认情况下,RabbitMQ 在 Docker 容器中使用的数据是临时的,容器删除后数据也会丢失。如果你需要持久化数据,可以挂载卷:
bash
docker run -d --hostname my-rabbit --name rabbitmq-server \
--publish 5672:5672 --publish 15672:15672 \
--volume /path/to/rabbitmq/data:/var/lib/rabbitmq \
rabbitmq:management
将 /path/to/rabbitmq/data
替换为你希望存储数据的宿主机路径。