RabbitMQ在Docker安装及使用

1.安装部署RabbitMQ

1).查看所有的RabbitMQ镜像

1
docker search RabbitMQ

2).拉取你中意的es镜像(推荐star高的)

1
2
3
4
5
6
7
8
9
docker pull <rabbitmq images>   

(如果拉取过程中报错在镜像后面加上版本,比如3.8.3-management)

(management版本(带有web页面的)的rabbitMq镜像)

em:

docker pull rabbitmq:management

3).创建挂载的目录

宿主机创建目录

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
mkdir -p /data/LPAPP/docker_rabbitmq/etc

mkdir -p /data/LPAPP/docker_rabbitmq/lib

mkdir -p /data/LPAPP/docker_rabbitmq/log

chmod -R 777 /data/LPAPP/docker_rabbitmq/etc

chmod -R 777 /data/LPAPP/docker_rabbitmq/lib

chmod -R 777 /data/LPAPP/docker_rabbitmq/log

(不用处理,会自动生成)复制docker文件(先创建没有目录映射的docker并启动)至宿主目录

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
docker cp -a 容器ID:/var/lib/rabbitmq /data/LPAPP/docker_rabbitmq/lib/

docker cp -a 容器ID:/etc/rabbitmq /data/LPAPP/docker_rabbitmq/etc/

docker cp -a 容器ID:/var/log/rabbitmq /data/LPAPP/docker_rabbitmq/log/

em:

docker cp -a 809deedd7b0f:/var/lib/rabbitmq /data/LPAPP/docker_rabbitmq/lib/

docker cp -a 809deedd7b0f:/etc/rabbitmq /data/LPAPP/docker_rabbitmq/etc/

docker cp -a 809deedd7b0f:/var/log/rabbitmq /data/LPAPP/docker_rabbitmq/log/

宿主机上创建rabbitmq用户

1
2
3
4
5
useradd rabbitmq

cd /data/LPAPP

chown -Rf rabbitmq:rabbitmq docker_rabbitmq

4).创建容器并启动

1.拉取镜像并创建容器并启动(挂载目录并从配置启动)(推荐)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
在/data/LPAPP/docker_rabbitmq/etc/目录中按(5).配置文件)步奏生成配置文件

docker run --name rabbitmq \

-p 5672:5672 -p 15672:15672 \

-v /data/LPAPP/docker_rabbitmq/etc:/etc/rabbitmq \

-v /data/LPAPP/docker_rabbitmq/lib:/var/lib/rabbitmq \

-v /data/LPAPP/docker_rabbitmq/log:/var/log/rabbitmq \

--hostname myRabbit \

-itd rabbitmq:management

2.拉取镜像并创建容器并启动(不挂载目录并从默认配置)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
docker run --name rabbitmq \

-p 5672:5672 -p 15672:15672 \

--hostname myRabbit \

-e RABBITMQ_DEFAULT_VHOST=my_vhost \

-e RABBITMQ_DEFAULT_USER=admin \

-e RABBITMQ_DEFAULT_PASS=dy123456 \

-itd rabbitmq:management

3.说明

说明:

-d 后台运行容器;

–name 指定容器名;

-p 指定服务运行的端口(5672:应用访问端口;15672:控制台Web端口号);

-v 映射目录或文件;

–hostname 主机名(RabbitMQ的一个重要注意事项是它根据所谓的 “节点名称” 存储数据,默认为主机名);

-e 指定环境变量;(RABBITMQ_DEFAULT_VHOST:默认虚拟机名;

RABBITMQ_DEFAULT_USER:默认的用户名;

RABBITMQ_DEFAULT_PASS:默认用户名的密码)

配置文件目录:/etc/rabbitmq

数据存储目录:/var/lib/rabbitmq

日志目录:/var/log/rabbitmq

4.进入容器:

1
docker exec -it rabbitmq /bin/bash

5.使用 http://IP地址:15672 访问rabbit控制台,账号密码:admin/dy123456

6.配置文件**

A.rabbitmq.conf配置文件

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
loopback_users.guest = false

listeners.tcp.default = 5672

default_pass = dy123456

default_user = admin

default_vhost = my_vhost

management.tcp.port = 15672

B.enabled_plugins配置文件

1
[rabbitmq_management,rabbitmq_prometheus].