Docker部署并启动RabbitMQ

本文详细介绍了如何使用Docker部署RabbitMQ,包括两种启动方法:一次性安装和创建自启动容器。重点讲解了配置环境变量、端口映射以及启用RabbitMQ管理插件的过程,确保能够通过Web界面访问控制面板。此外,还提到了如何设置容器自启动以及访问控制面板的注意事项。
摘要由CSDN通过智能技术生成

Docker部署并启动RabbitMQ

方式一:

一次性安装镜像并启动容器

docker run -di --name myrabbit -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=admin123 -p 15672:15672 -p 5672:5672 -p 25672:25672 -p 1883:1883 rabbitmq:management
  • 上诉方法可直接配置好MQ并使用图形化界面

方式二:

查询rabbitmq镜像

  • 通过docker语法

    [root@XXXXX ~]# docker search rabbitmq
    NAME                                        DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
    rabbitmq                                    RabbitMQ is an open source multi-protocol me…   4044      [OK]       
    tutum/rabbitmq                              Base docker image to run a RabbitMQ server      22                   
    kbudde/rabbitmq-exporter                    rabbitmq_exporter for prometheus                17                   [OK]
    frodenas/rabbitmq                           A Docker Image for RabbitMQ                     12                   [OK]
    cyrilix/rabbitmq-mqtt                       RabbitMQ MQTT Adapter                           9                    [OK]
    arm64v8/rabbitmq                            RabbitMQ is an open source multi-protocol me…   8                    
    
    
  • 通过docker hub查询
    在这里插入图片描述

拉取rabbitmq镜像

docker pull rabbitmq
[root@XXX ~]# docker pull rabbitmq
Using default tag: latest
latest: Pulling from library/rabbitmq
7b1a6ab2e44d: Pull complete 
37f453d83d8f: Pull complete 
33be96f1328e: Pull complete 
d3c5c3f5c49a: Pull complete 
a3d2d8a82978: Pull complete 
633da6037b0d: Pull complete 
a619e412c37f: Pull complete 
338c71e3d8cd: Pull complete 
1daa7c79a268: Pull complete 
Digest: sha256:614b261769212c54528bd99148e6ed0479a4f9e199829de4dfdfa140e8da713a
Status: Downloaded newer image for rabbitmq:latest
docker.io/library/rabbitmq:latest

查询rabbitMQ镜像

[root@XXXXX ~]# docker images
REPOSITORY   TAG       IMAGE ID       CREATED      SIZE
rabbitmq     latest    05a22b32da70   4 days ago   220MB

创建并启动容器(宿主机需放开配置映射的端口)

#使用默认账密guest
docker run -d --name myRabbit -p 15672:15672 -p 5672:5672 rabbitmq

或

#指定密码的启动方式
docker run -d --name myRabbit -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=admin -p 15672:15672 -p 5672:5672 -p 25672:25672 -p 61613:61613 -p 1883:1883 rabbitmq

重点: MQ中,5672端口提供控制台服务,15672端口提供web界面服务。

查询容器

#查询运行中的容器
docker ps

#查询全部容器
docker ps -a

#启动历史容器
docker start 容器id

#查看容器的详细信息
docker inspect 容器id
[root@XXXX ~]# docker ps
CONTAINER ID   IMAGE      COMMAND                  CREATED              STATUS              PORTS                                                                                                                                      NAMES
6f01c6e8f775   rabbitmq   "docker-entrypoint.s…"   About a minute ago   Up About a minute   4369/tcp, 0.0.0.0:5672->5672/tcp, :::5672->5672/tcp, 5671/tcp, 15691-15692/tcp, 25672/tcp, 0.0.0.0:15672->15672/tcp, :::15672->15672/tcp   myRabbit

将容器设置为自启动(当docker启动时,容器自启动)

  • 新建容器时设置为自启动

    docker run -d --restart=always --name myRabbit -p 15672:15672 -p 5672:5672 rabbitmq
    
  • 为已存在的容器配置自启动

    docker update --restart=always 容器id 或 容器名称
    
  • 取消自启动

    docker update --restart=no 容器id 或 容器名称
    
  • 批量设置自启动

    docker update --restart=always $(docker ps -aq)
    

访问RabbitMQ的web控制面板

通过 http://服务器IP:15672

未设置特殊账密时,默认账密为guest

在工程中的配置文件里,MQ的配置PORT为映射5672端口的宿主机端口

访问web控制面板的注意点

原因: 由于Docker镜像保持着尽可能轻便的原则,导致很多镜像都是阉割版。

解决方案

  • 进入容器

    docker exec -it 容器id /bin/bash
    
  • 启动插件

    rabbitmq-plugins enable rabbitmq_management
    

    执行效果:

    root@6f01c6e8f775:/# rabbitmq-plugins enable rabbitmq_management
    Enabling plugins on node rabbit@6f01c6e8f775:
    rabbitmq_management
    The following plugins have been configured:
      rabbitmq_management
      rabbitmq_management_agent
      rabbitmq_prometheus
      rabbitmq_web_dispatch
    Applying plugin configuration to rabbit@6f01c6e8f775...
    The following plugins have been enabled:
      rabbitmq_management
    
    started 1 plugins.
    
    

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值