• Docker中安装RabbitMQ


    1、一点废话(可直接跳转至标题2)

    通常在拉取镜像之前,除了通过命令执行 docker search xxx 之外,我们还可以通过 Docker 镜像仓库查询指定的镜像。

    如下是 rabbitmq 镜像的搜索结果:

    一般拉取下载数 + stars 数相对比较高的,可防止被别人挂马。

    我们点开这个 stars 数最多的 rabbitmq,然后在标签页可以找到镜像当前的一些版本信息:

    截图中的这两个标签版本,management 表示带 web 管理界面的版本,也就是可视化操作的,所以镜像相对大个10M左右,我们通常都是使用这个版本。

    2、正文部分

    2.1、拉取镜像

    悉知:本文基于 rabbitmq:3.8.9-management

    docker pull rabbitmq:3.8.9-management

    安装过程如下:

    2.2、创建并启动镜像

    执行如下命令:

    docker run -d --hostname my-rabbitmq 
    -p 15672:15672 -p 5672:5672 
    --name my-rabbitmq 
    -e RABBITMQ_DEFAULT_USER=admin 
    -e RABBITMQ_DEFAULT_PASS=admin 
    rabbitmq:3.8.9-management

    执行截图:

    关于参数:

    • -d:以守护进程方式在后台运行
    • --hostname:设置容器的主机名称,仅本机可见。这种方式是写到 /etc/hostname ,以及 /etc/hosts 文件中,作为容器主机IP的别名,并且将显示在容器的bash中。不过这种方式设置的主机名将不容易被容器之外可见。这将不会出现在 docker ps 或者 其他的容器的 /etc/hosts 文件中。
    • --name:指定容器名
    • -p:指定服务运行的端口。
    • RABBITMQ_DEFAULT_USER:用于设置登陆控制台的用户名,这里我设置 admin
    • RABBITMQ_DEFAULT_PASS:用于设置登陆控制台的密码,这里我设置 admin容器启动成功后,可以在浏览器输入地址:http://ip:15672/访问控制台

    额外说一下 rabbitmq 这几个端口的作用:

    • 4369:EPMD( Erlang Port Mapper Daemon)端口号,在 Erlang 集群中相当于 dns 的作用
    • 5672:client 端通信端口
    • 15672:web管理界面端口

    2.3、访问web管理界面

    账号密码为上方指定的 user_pass:admin、admin

    2.4、创建账户

    切换到 Admin 标签,完成对用户的增删改查,其中 Tags 表示角色,角色取值有:

    • administrator (超级管理员):可登陆管理控制台(启用management plugin的情况下),可查看所有的信息,并且可以对用户,策略(policy)进行操作。

    • monitoring(监控者):可登陆管理控制台(启用management plugin的情况下),同时可以查看rabbitmq节点的相关信息(进程数,内存使用情况,磁盘使用情况等)

    • policymaker(策略制定者):可登陆管理控制台(启用management plugin的情况下), 同时可以对policy进行管理。

    • management(普通管理者):仅可登陆管理控制台(启用management plugin的情况下),无法看到节点信息,也无法对策略进行管理。

    • none(其他):无法登陆管理控制台,通常就是普通的生产者和消费者。

    如下是 Web 操作截图界面:

    2.5、创建虚拟 host(niceyoo)

    创建 host 可以通过 docker 进入容器内部通过命令方式创建,当然也可以直接在 web 管理界面新增更加的直观。

    Admin 标签,右侧 Virtual Hosts ,Add virtual host

    2.6、分配用户Host权限

    点击上方新增的 host 节点,进入该 host

    3、文章推荐

    RabbitMQ六种队列模式-简单队列
    RabbitMQ六种队列模式-工作队列
    RabbitMQ六种队列模式-发布订阅
    RabbitMQ六种队列模式-路由模式
    RabbitMQ六种队列模式-主题模式
    SpringBoot整合RabbitMQ
    RabbitMQ消息幂等性问题

  • 相关阅读:
    webpack4入门配置
    RequireJs的理解
    js一次控制 多个style样式
    vue中封装一个全局的弹窗js
    地理位置索引 2d索引
    索引属性 稀疏索引,定时索引
    索引属性 unique指定
    索引属性 name指定
    mongodb索引 全文索引使用限制
    mongodb索引 全文索引之相似度查询
  • 原文地址:https://www.cnblogs.com/niceyoo/p/14094715.html
Copyright © 2020-2023  润新知