RabbitMQ(二):RabbitMQ的安装(Linux、基于docker安装)及其插件安装

1、下载RabbitMq的镜像

docker pull rabbitmq:3.8-management

RabbitMQ(二):RabbitMQ的安装(Linux、基于docker安装)及其插件安装_第1张图片

2、查看镜像是否下载成功

docker images

RabbitMQ(二):RabbitMQ的安装(Linux、基于docker安装)及其插件安装_第2张图片

3、安装MQ
执行下面的命令来运行MQ容器:

docker run \
 -e RABBITMQ_DEFAULT_USER=itcast \
 -e RABBITMQ_DEFAULT_PASS=123321 \
 -v mq-plugins:/plugins \
 --name mq \
 --hostname mq1 \
 -p 15672:15672 \
 -p 5672:5672 \
 -d \
 rabbitmq:3.8-management

RabbitMQ(二):RabbitMQ的安装(Linux、基于docker安装)及其插件安装_第3张图片

注释:RabbitMQ(二):RabbitMQ的安装(Linux、基于docker安装)及其插件安装_第4张图片
4、此时:确认下容器为开启状态
docker ps
在这里插入图片描述
5、部署成功后可以登录RabbitMQ管理平台: http://虚拟机的ip地址:15672/
RabbitMQ(二):RabbitMQ的安装(Linux、基于docker安装)及其插件安装_第5张图片

RabbitMQ插件的安装

DelayExchange插件

1、下载DelayExchange插件
官网下载地址 : https://www.rabbitmq.com/community-plugins.html
RabbitMQ(二):RabbitMQ的安装(Linux、基于docker安装)及其插件安装_第6张图片
2、将下载的文件rabbitmq_delayed_message_exchange-3.8.9-0199d11c.ez 移动到虚拟机的目录(路径可以自己随便指定,记住即可)(这里我放在了/var/tmp/)
RabbitMQ(二):RabbitMQ的安装(Linux、基于docker安装)及其插件安装_第7张图片
3、将该插件复制到rabbitMQ容器的plugins目录中

docker cp /var/tmp/rabbitmq_delayed_message_exchange-3.9.0.ez mq:/plugins/rabbitmq_delayed_message_exchange-3.9.0.ez

4、查看是否该插件是否复制成功到RabbitMQ的容器中
备注:下面的mq为容器名称
docker exec -it mq bash # 进入容器
cd plugs 进入插件目录

docker exec -it mq bash  # 进入容器
cd plugs
ls

RabbitMQ(二):RabbitMQ的安装(Linux、基于docker安装)及其插件安装_第8张图片
5、安装插件:

rabbitmq-plugins enable rabbitmq_delayed_message_exchange

RabbitMQ(二):RabbitMQ的安装(Linux、基于docker安装)及其插件安装_第9张图片
插件二:管控台插件(每次都需要进入rabbitmq容器中手动开启,否则windows无法访问管控台)

rabbitmq-plugins enable  rabbitmq_management
exit

问题:安装插件之后,每次重启容器都需要手动开启插件,非常麻烦

解决方案:将【开启了插件的容器】【提交为基础镜像】供后续备用

说明:docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]
-a :提交的镜像作者;
-c :使用Dockerfile指令来创建镜像;
-m :提交时的说明文字;
-p :在commit时,将容器暂停。

docker commit 容器ID 自定义镜像名字:自定义标签

docker ps 
docker commit 容器ID rabbitmq:stomp
docker images

RabbitMQ(二):RabbitMQ的安装(Linux、基于docker安装)及其插件安装_第10张图片
6、停止原来的mq容器,删除该容器

docker stop mq
docker rm mq

7、重新创建容器

docker run \
 -e RABBITMQ_DEFAULT_USER=itcast \
 -e RABBITMQ_DEFAULT_PASS=123321 \
 -v mq-plugins:/plugins \
 --name mq \
 --hostname mq1 \
 -p 15672:15672 \
 -p 5672:5672 \
 -d \
 rabbitmq:stomp

RabbitMQ(二):RabbitMQ的安装(Linux、基于docker安装)及其插件安装_第11张图片
此后,重新打开的rabbitMQ容器会自动开启插件

参考文章:二 docker安装rabbitMQ以及web stomp插件
docker中安装RabbitMQ(DelayExchange)插件

消息队列专栏文章:

RabbitMQ(一)初识消息队列(MQ)

RabbitMQ(二):RabbitMQ的安装(Linux、基于docker安装)及其插件安装

RabbitMQ(三):RabbitMQ快速入门(SpringBoot)

RabbitMQ(四):RabbitMQ高级特性

文章整理自:黑马教学视频

你可能感兴趣的:(消息队列,rabbitmq,linux,docker)