天天看點

RabbitMQ安裝(Docker、Centos、Windows)

RabbitMQ安裝

    • 基礎環境
    • 基于Docker的安裝使用
    • Windows下安裝RabbitMQ(windows10)
    • CentOS下安裝RabbitMQ
      • 方法1:yum安裝
      • 方法2:使用安裝包安裝

基礎環境

docker: 19.03.5

windows 10

CentOS7

rabbit MQ:3.8.3

erlang: 22.3

官方

基于Docker的安裝使用

1. 首先看看dockerhub上都有啥

搜尋rabbit

RabbitMQ安裝(Docker、Centos、Windows)

這裡選擇第一個(主角光環)

看看裡面都有什麼

RabbitMQ安裝(Docker、Centos、Windows)

注:帶management的tag也就是帶控制台的。

2. 拉取鏡像(以rabbitmq:management為例)

docker pull rabbitmq:management
           
RabbitMQ安裝(Docker、Centos、Windows)

3. 建立容器(以rabbitmq:management為例)

建立容器的時候需要将服務端口暴露出來(5672:消息通信端口,15672:控制台web端口)

docker run --name rabbitmq -d -p 15672:15672 -p 5672:5672 rabbitmq:management
           
RabbitMQ安裝(Docker、Centos、Windows)

4. 檢視控制台

通路:http://localhost:15672 預設使用者名:guest,密碼:guest

RabbitMQ安裝(Docker、Centos、Windows)

自此基于docker的rabbitmq服務就搭好了。

Windows下安裝RabbitMQ(windows10)

官方文檔

根據官方指引,有兩種安裝,一種是Chocolatey管理器,一種是手動下載下傳安裝。

這裡以離線安裝RabbitMQ為例

1. 下載下傳安裝依賴環境Erlang

官方提示需要下載下傳安裝Erlang 64位(也就是要求64位作業系統),且安裝時使用admin權限(防止使用的時候權限不足。

另外:官方要求隻能安裝一個版本(自行決定)

Erlang官網

下載下傳Erlang

RabbitMQ安裝(Docker、Centos、Windows)

2. 管理者身份安裝Erlang

RabbitMQ安裝(Docker、Centos、Windows)

安裝過程可能需要安裝VC++運作庫(會跳出以下視窗),如果沒有安裝記得install一下,提示安裝完成,點選close即可完成VC++的運作庫安裝

RabbitMQ安裝(Docker、Centos、Windows)

剩下的就一直下一步、install即可。

3. 下載下傳rabbit mq的安裝檔案

RabbitMQ安裝(Docker、Centos、Windows)

下載下傳完成,使用管理者權限安裝即可。

因為要釋出服務端口的原因,安裝過程中,可能會被防火牆攔截,提示如下:

RabbitMQ安裝(Docker、Centos、Windows)

允許通路即可。安裝完成後,所有程式中即出現常用指令快捷方式

RabbitMQ安裝(Docker、Centos、Windows)

Rabbit MQ的安裝是以服務的形式存在,可以在服務管理裡看到。

RabbitMQ安裝(Docker、Centos、Windows)

4. 啟用web管理界面插件

預設安裝是沒有web界面的,需要手動開啟

RabbitMQ安裝(Docker、Centos、Windows)

所有程式中找到 Command Prompt 打開指令行(或者使用cmd,切換到rabbit的安裝目錄),執行如下指令完成啟用:

rabbitmq-plugins.bat enable rabbitmq_management
           
RabbitMQ安裝(Docker、Centos、Windows)

自此,web控制台即可打開。

需要注意的是,端口沖突可能造成服務無法正常啟動。注意避開。

CentOS下安裝RabbitMQ

Linux/BSD/UNIX下安裝并不通用,注意作業系統

Debian/Ubuntu | RHEL/CentOS/Fedora | Generic binary build(含macOS) | Solaris|MacOS:homebrew

這裡選取Centos環境進行安裝。

CentOS下安裝主要也是分安裝erlang和rabbitmq兩步

RabbitMQ安裝過程,資源拉取依賴PackageCloud,這裡提供PackageCloud密鑰導入方法,友善使用的時候簽名。

#導入将從2018年12月1日(GMT)開始使用的新PackageCloud密鑰
rpm --import https://packagecloud.io/rabbitmq/rabbitmq-server/gpgkey
#導入将在2018年12月1日(GMT)停止使用的舊PackageCloud密鑰
rpm --import https://packagecloud.io/gpg.key
           

方法1:yum安裝

1:配置倉庫

#erlang
  curl -s https://packagecloud.io/install/repositories/rabbitmq/erlang/script.rpm.sh | sudo bash
  #rabbitmq
  curl -s https://packagecloud.io/install/repositories/rabbitmq/rabbitmq-server/script.rpm.sh | sudo bash
           

以上連個檔案有時候是下載下傳不下來的,附件提供了下載下傳,有需要可以下載下傳執行

erlang-script,rabbitmq-server

安裝erlang

search可用安裝包:yum search erlang

RabbitMQ安裝(Docker、Centos、Windows)
#搜尋
yum search erlang
#安裝
yum install erlang.x86_64
           
RabbitMQ安裝(Docker、Centos、Windows)

檢查:

RabbitMQ安裝(Docker、Centos、Windows)

安裝rabbit mq

#搜尋
yum search rabbit
#按裝
rabbitmq-server.noarch
           
RabbitMQ安裝(Docker、Centos、Windows)

RabbitMQ安裝完成後,rabbitmq已經注冊成為服務,通過以下指令完成啟動及開啟web管理

#啟動
systemctl start rabbitmq-server
#停止
 systemctl stop rabbitmq-server
#重新開機
 systemctl restart rabbitmq-server
 #啟用web管理插件
 rabbitmq-plugins enable rabbitmq_management
           

至此RabbitMQ已經安裝并啟動完成。

RabbitMQ安裝(Docker、Centos、Windows)

如上圖,guest無法登陸。這個問題是由于guest不允許在除本地外的地方登陸,修改/usr/lib/rabbitmq/lib/rabbitmq_server-3.8.3/ebin/rabbit.app配置檔案,将loopback_users項修改如下圖所示。

RabbitMQ安裝(Docker、Centos、Windows)

方法2:使用安裝包安裝

下載下傳erlang安裝,也可以選擇别的版本(el6\el7\el8 區分的是作業系統版本).

#wget 下載下傳位址
 wget https://bintray.com/rabbitmq-erlang/rpm/download_file?file_path=erlang%2F22%2Fel%2F7%2Fx86_64%2Ferlang-22.3.2-1.el7.x86_64.rpm
 #安裝
 rpm -ivh erlang-22.3.2-1.el7.x86_64.rpm 
 #測試 erl 參見yum安裝
           
RabbitMQ安裝(Docker、Centos、Windows)

下載下傳rabbitme安裝包

t wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.8.3/rabbitmq-server-3.8.3-1.el7.noarch.rpm
           

安裝的時候可能提示缺少socat

RabbitMQ安裝(Docker、Centos、Windows)

這裡不再啰嗦soca的安裝,直接yum install socat完事

socat依賴的問題解決以後,在此安裝:

RabbitMQ安裝(Docker、Centos、Windows)

安裝RabbitMQ伺服器軟體包時,預設情況下未将伺服器作為守護程式啟動。在系統引導時預設啟動守護程式,以管理者身份運作

chkconfig rabbitmq-server on
           

自此RabbitMQ安裝完畢,管理方式跟yum安裝一緻(服務開啟關閉重新開機、啟用插件rabbitmq_management、解決guest不能遠端通路問題),這裡就直接省略。

##總結

簡單總結一下,RabbitMQ由于是用erlang語言開發的,是以安裝時應首先考慮erlang的安裝情況,二則還存在版本沖突問題,是以安裝前就應該确定他們的版本。