消息中间件-------------RabbitMQ的基本安装

RabbitMQ的基本安装

一 docker下安装RabbitMQ

首先使用 docker search rabbitmq命令查找docker仓库是否存在rabbitmq镜像,可以发现docker仓库是存在rabbitmq的

 1 [root@admin ~]# docker search rabbitmq
 2 NAME                                       DESCRIPTION                                     STARS               OFFICIAL            AUTOMATED
 3 rabbitmq                                   RabbitMQ is an open source multi-protocol me…   2809                [OK]                
 4 bitnami/rabbitmq                           Bitnami Docker Image for RabbitMQ               35                                      [OK]
 5 tutum/rabbitmq                             Base docker image to run a RabbitMQ server      20                                      
 6 kbudde/rabbitmq-exporter                   rabbitmq_exporter for prometheus                12                                      [OK]
 7 frodenas/rabbitmq                          A Docker Image for RabbitMQ                     12                                      [OK]
 8 cyrilix/rabbitmq-mqtt                      RabbitMQ MQTT Adapter                           7                                       [OK]
 9 arm32v7/rabbitmq                           RabbitMQ is an open source multi-protocol me…   7                                       
10 gonkulatorlabs/rabbitmq                    DEPRECATED: See maryville/rabbitmq              5                                       [OK]
11 aweber/rabbitmq-autocluster                RabbitMQ with the Autocluster Plugin            4                                       
12 pivotalrabbitmq/rabbitmq-server-buildenv   Image used to build and test RabbitMQ server…   3                                       
13 pivotalrabbitmq/rabbitmq-autocluster       RabbitMQ with the rabbitmq-autocluster plugi…   3                                       
14 deadtrickster/rabbitmq_prometheus          RabbitMQ + Prometheus RabbitMQ Exporter plug…   2                                       
15 henrylv206/rabbitmq-autocluster            RabbitMQ Cluster                                2                                       [OK]
16 arm64v8/rabbitmq                           RabbitMQ is an open source multi-protocol me…   1                                       
17 activatedgeek/rabbitmqadmin                A rabbitmqadmin docker image for administrat…   1                                       [OK]
18 webhostingcoopteam/rabbitmq-conf           RabbitMQ Configurator for Rancher               1                                       [OK]
19 riftbit/rabbitmq                           RabbitMQ 3.x Container based on Alpine Linux…   1                                       
20 amd64/rabbitmq                             RabbitMQ is an open source multi-protocol me…   1                                       
21 foxylion/rabbitmq                          Preconfigured RabbitMQ docker image with sup…   1                                       [OK]
22 pdffiller/rabbitmq                         Rabbitmq 3.7.3 with delayed_message plugin,c…   0                                       
23 ekesken/rabbitmq                           docker image for rabbitmq that is configurab…   0                                       [OK]
24 i386/rabbitmq                              RabbitMQ is an open source multi-protocol me…   0                                       
25 s390x/rabbitmq                             RabbitMQ is an open source multi-protocol me…   0        
  • 选择安装官方的镜像(这里有个坑就是不要直接去下rabbitmq,需要在后面加上:management,如果没有加,docker会自动下rabbitmq:latest 这个版本,latest这个版本没有web管理页面)

1 [root@admin ~]# docker pull rabbitmq:management
  • 启动RabbitMQ

1 [root@admin ~]# docker run -d --hostname my-rabbit --name rabbit -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:management

说明:

-d 后台运行容器;

--name 指定容器名;

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

-v 映射目录或文件;

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

-e 指定环境变量;(RABBITMQ_DEFAULT_VHOST:默认虚拟机名;RABBITMQ_DEFAULT_USER:默认的用户名;RABBITMQ_DEFAULT_PASS:默认用户名的密码)

  • 最后就可以使用浏览器打开web管理端:http://Server-IP:15672

二 linux下安装RabbitMQ

  • 安装Erlang环境

  • 安装GCC GCC-C++ Openssl等模块,安装过就不需要安装了
1 yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel
  • 安装ncurses
1 yum -y install ncurses-devel
  • 安装erlang环境
1 wget http://erlang.org/download/otp_src_18.2.1.tar.gz
2 tar xvfz otp_src_18.2.1.tar.gz
3 ./configure
4 make install

 

  • 安装RabbitMQ

  • 下载rabbitmq-server-3.6.9.tar.xz
1 wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.9/rabbitmq-server-generic-unix-3.6.9.tar.xz
  • 对于下载xz包进行解压,首先先下载xz压缩工具:
1 yum install xz
  • 对rabbitmq包进行解压:
1 xz -d xz -d rabbitmq-server-generic-unix-3.6.9.tar.xz
2 tar -xvf rabbitmq-server-generic-unix-3.6.9.tar
  • 随后移动至/usr/local/下 改名rabbitmq:
1 cp -r rabbitmq_server-3.6.9 /usr/local/rabbitmq
这种下载的方式解压后直接可以使用,无需再编译安装;
进入到rabbit文件内,其命令文件存在于sbin文件夹下,因此需要将sbin文件夹的路径添加到PATH中:
1 vi /etc/profile

在里面添加

1 export PATH=/usr/local/rabbitmq/sbin:$PATH

:wq保存退出,然后执行使得PATH路径更新,rabbitMQ安装成功。

1 source /etc/profile
  • 随后启用MQ管理方式:
1 rabbitmq-plugins enable rabbitmq_management #启动后台管理
2 rabbitmq-server -detached #后台运行rabbitmq
  • 设置端口号,可供外部访问:
1 iptables -I INPUT -p tcp --dport 15672 -j ACCEPT 
2 iptables -I INPUT -p tcp --dport 5672 -j ACCEPT
  • 添加用户和权限

默认网页guest用户是不允许访问的,需要增加一个用户修改一下权限,代码如下:

添加用户:

1 rabbitmqctl add_user admin admin

添加权限:

1 rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*"

修改用户角色:

1 rabbitmqctl set_user_tags admin administrator

然后就可以远程访问了,然后可直接配置用户权限等信息。

 

猜你喜欢

转载自www.cnblogs.com/jiuhaoyun/p/11576895.html