# Docker 安装 RabbitMQ

# Docker 方式

  1. 拉取镜像

    docker pull rabbitmq:3.8-management
    
    1
  2. 运行容器

    docker run -d --name rabbitmq \
    -e RABBITMQ_DEFAULT_VHOST=my_vhost \
    -e RABBITMQ_DEFAULT_USER=admin  \
    -e RABBITMQ_DEFAULT_PASS=admin \
    -p 15672:15672 -p 5672:5672 \
    rabbitmq:3.8-management 
    
    # -p 指定服务运行的端口(5672:应用访问端口;15672:控制台Web端口号)
    # -hostname 主机名(RabbitMQ的一个重要注意事项是它根据所谓的 “节点名称” 存储数据,默认为主机名); 
    # -e 指定环境变量
    ## RABBITMQ_DEFAULT_VHOST:默认虚拟机名
    ## RABBITMQ_DEFAULT_USER:默认的用户名
    ## RABBITMQ_DEFAULT_PASS:默认用户名的密码
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13

    # DickerCompose方式

    1. 编写docker-compose.yml

      version: '3.8'
      services:
        # 没有测试过,慎重使用 访问地址:http://ip:15672,初始账号密码:guest guest
        ufs-rabbitmq:
          image: rabbitmq:3.9-management
          container_name: ufs-rabbitmq
          restart: always
          ports:
            - "5672:5672"
            - "15672:15672"
          environment:
            TZ: Asia/Shanghai
          volumes:
            - ./rabbitmq/data:/var/lib/rabbitmq #数据文件挂载
            #- /etc/localtime:/etc/localtime:ro
      
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
    2. 启动容器 docker compose up -d ufs-fabbitmq

    3. 访问地址:http://ip:15672,初始账号密码:guest guest

    4. 创建自己的账号 Admin -> Add a user -> Tags要填写 administrator

    5. 或者通过命令创建也行

      #1.进入mq容器:
      docker exec -it ufs-rabbitmq /bin/bash
      #2.查看rabbitmq的账号以及角色
      rabbitmqctl list_users
      #3.设置admin账号的角色为administrator
      rabbitmqctl set_user_tags admin administrator
      
      1
      2
      3
      4
      5
      6