java|rabbitMQ:二使用docker安装rabbitMQ

本教程将每一步脉络整体书写,每一步具体操作,都有细分讲解
rabbitMQ 适合中小型公司,数据量不大的业务系统.
  1. 首先在 centos 7 系统上安装好 docker 并启动
  2. 拉取镜像。docker 所有的镜像都在官方仓库。
# 拉取镜像 docker pull rabbitmq:management # 查看镜像是否下载成功 docker images

  1. 下载好之后,创建并启动 RabbitMQ 容器
docker run -id --hostname myrabbit --name rabbitmq -p 15672:15672 -p 5672:5672 rabbitmq:management

  1. 启动之后,进入容器交互页面:docker exec -it rabbitmq /bin/bash
  2. 在容器交互页面,下载插件:rabbitmq-plugins enable rabbitmq_management,下载完成后输入 exit 退出.
  3. 在你本机上,打开浏览器访问:http://你自己的IP地址:15672/.
  4. 如果运气好那么你已经可以看到 rabbitMQ 登录界面了。但如果你是阿里云,腾讯云这种云服务器,那么还需要额外做两步:1.防火墙放行,2.安全组规则放行端口(下面有详细讲解)
  5. 此时浏览器会出现一个简单的登录界面,由于没有远程账号,所以需要 添加一个远程登录的用户(下面有详细讲解)
  6. 打开浏览器在登陆界面输入刚才创建的账号和密码即可
防火墙放行 云服务器就是费劲,需要手动防火墙放行 15672 这个端口:
# 1.查看防火墙是否开启状态,没有打开则打开防火墙 [root@localhost ~]# systemctl status firewalld # 2.打开防火墙 [root@localhost ~]# systemctl start firewalld # 3. 防火墙设置 15672 端口也允许通行 (docker得rabbitMQ镜像端口) [root@localhost ~]#firewall-cmd --zone=public --add-port=15672/tcp --permanent success # 4. 防火墙设置 5672 端口也允许通行(rabbitMQ得浏览器访问端口) [root@localhost ~]#firewall-cmd --zone=public --add-port=5672/tcp --permanent success # 5. 防火墙重新加载刚设置得配置 [root@localhost ~]# firewall-cmd --reload success # 6. 查看防火墙已经放行的端口 [root@localhost ~]# firewall-cmd --list-ports 15672/tcp 5672/tcp

安全组规则放行端口 以阿里云为例子,其他云服务器流程一样:
  1. 登录阿里云,选择自己的云服务器实例
  2. 点击安全策略组, 点击入方向
  3. 手动添加一条规则:输入 目的(2375),源(0.0.0.0/0)即可
    java|rabbitMQ:二使用docker安装rabbitMQ
    文章图片
添加一个远程登录的用户
进入容器交互页面,然后继续执行添加用户的操作
# rabbitmqctl add_user 用户名 密码 > rabbitmqctl add_user ifredom 123456 # rabbitmqctl set_user_tags 用户名 角色 > rabbitmqctl set_user_tags ifredom administrator # rabbitmqctl set_permissions -p / 用户名 ".*" ".*" ".*" > rabbitmqctl set_permissions -p / ifredom ".*" ".*" ".*" # 查看用户是否添加成功 > rabbitmqctl list_users

  • administrator:可以登录控制台、查看所有信息、并对 rabbitmq 进行管理
  • monToring:监控者;登录控制台,查看所有信息
  • policymaker:策略制定者;登录控制台指定策略
  • managment:普通管理员;登录控制
启动参数解释 使用 docker 启动 rabbitmq 参数:
  • 第一个 -p :用于页面访问使用
  • 第二个 -p :用于生产和消费端使用(也就是在代码里使用)
  • -d 后台运行容器;
  • –name 指定容器名;
  • -p 指定服务运行的端口(5672:应用访问端口;15672:控制台 Web 端口号);
  • –hostname 主机名(RabbitMQ 的一个重要注意事项是它根据所谓的 “节点名称” 存储数据,默认为主机名);
其他建议
  • 查看所有版本的 rabbitMQ: 打开官方仓库,进入后搜索 rabbitMQ, 点击第一项 rabbitMQ 后,点击 rabbitMQ,接下来一定要选择带 management 标志的。
  • 此时列出来了所有的 rabbitMQ 历史版本,需要注意的是,安装时不要使用最新的,一定要选择带management的版本安装。
  • 服务器如果重启了,那么你必须重启 docker :systemctl restart docker.然后重启防火墙,然后重新安装插件 rabbitmq_management,然后设置用户
  • 如果你安装的是最新的版本 RabbitMQ ,当你浏览器登录到管理页面会发现 overview 详情那里缺少了一部分功能。所以你不得不 1.停止 rabbit container,2.删除 rabbit container,3.删除 rabbit image ,4.然后重新按照上面的步骤安装
可能用到的操作指令
  • docker ps #查看所有容器
  • docker ps -a #查看正在运行的容器
  • docker stop rabbitmq #停止 rabbitmq
  • docker rm 容器的 id #删除某 container
  • docker rmi 镜像的 id #删除某 image
  • rabbitmqctl list_users 查看 rabbitMQ 中所有的用户
    java|rabbitMQ:二使用docker安装rabbitMQ
    文章图片
参考阅读
  • 创建用户
【java|rabbitMQ:二使用docker安装rabbitMQ】------ 如果文章对你有用,感谢右上角 >>>点赞 | 收藏 <<<

    推荐阅读