您好!安裝 RabbitMQ 消息隊列是一個非常棒的選擇,它是許多現代應用架構中的核心組件。
在 openSUSE Tumbleweed 上安裝 RabbitMQ 主要有兩種流行的方式:一種是使用系統的包管理器 zypper
,另一種是使用 Docker 容器。我將為您詳細介紹這兩種方法。
前置知識:RabbitMQ 是用 Erlang 語言編寫的,因此安裝 RabbitMQ 時會自動安裝 Erlang 語言環境作為其依賴。您無需手動安裝 Erlang。
方法一:使用 zypper
安裝 (推薦,與系統集成度高)
這個方法會將 RabbitMQ 作為系統服務來安裝和管理。
第一步:安裝 RabbitMQ 服務器
打開終端,運行以下命令:
sudo zypper install rabbitmq-server
zypper
會自動解決包括 Erlang 在內的所有依賴關系,并進行安裝。
第二步:啟動并設置開機自啟
安裝完成后,服務需要手動啟動,并設置為開機時自動運行。
# 立即啟動 RabbitMQ 服務
sudo systemctl start rabbitmq-server# 將 RabbitMQ 服務設置為開機自啟
sudo systemctl enable rabbitmq-server# (可選) 檢查服務狀態,確保它正在運行
sudo systemctl status rabbitmq-server
當您看到綠色的 active (running)
字樣時,表示 RabbitMQ 核心服務已經成功啟動。
第三步:啟用 Web 管理插件 (非常重要!)
RabbitMQ 提供了一個非常好用的網頁管理界面,但默認沒有開啟。我們必須手動啟用它。
(
這一步有問題
https://blog.csdn.net/Yqha1/article/details/148962001?spm=1001.2014.3001.5501
)
# 啟用 rabbitmq_management 插件
sudo rabbitmq-plugins enable rabbitmq_management
這個插件會啟動一個 Web 服務器,默認監聽在端口 15672
。
第四步:配置防火墻 (如果需要遠程訪問)
如果您想從另一臺電腦訪問 RabbitMQ 的管理界面或服務,您需要打開防火墻端口。如果您只在本機上訪問 (localhost
),則可以跳過此步。
# 開放 Web 管理界面的端口 15672
sudo firewall-cmd --add-port=15672/tcp --permanent# (可選) 開放 AMQP 協議的主端口 5672,用于程序連接
sudo firewall-cmd --add-port=5672/tcp --permanent# 重新加載防火墻規則以生效
sudo firewall-cmd --reload
第五步:創建管理員用戶 (關鍵步驟)
出于安全原因,默認的 guest
用戶只能通過 localhost
登錄管理界面。為了能從任何地方登錄,或者為了有更好的權限管理,您應該創建一個自己的管理員用戶。
-
創建新用戶 (將
myadmin
和YourStrongPasswordHere
替換為您自己的用戶名和密碼):sudo rabbitmqctl add_user myadmin YourStrongPasswordHere
-
將用戶設置為管理員:
sudo rabbitmqctl set_user_tags myadmin administrator
-
為用戶授予所有權限:
sudo rabbitmqctl set_permissions -p / myadmin ".*" ".*" ".*"
第六步:驗證安裝
一切就緒!現在打開您的網頁瀏覽器,訪問:
http://localhost:15672
您會看到 RabbitMQ 的登錄界面。請使用您剛剛創建的新用戶名 (myadmin
) 和密碼登錄。
如果您能成功登錄并看到儀表盤 (Dashboard),那么恭喜您,RabbitMQ 已經完美安裝并配置好了!
方法二:使用 Docker 運行 (現代、隔離、便捷)
如果您熟悉 Docker,或者不想在主系統中安裝 RabbitMQ 服務,使用 Docker 是一個絕佳的選擇。
-
確保您已安裝并運行 Docker。
-
運行 RabbitMQ 容器:
執行下面這一行命令,Docker 會自動下載帶有管理插件的 RabbitMQ 鏡像,并在后臺啟動一個容器。docker run -d --hostname my-rabbit --name some-rabbit \-p 5672:5672 \-p 15672:15672 \rabbitmq:3-management
-d
: 后臺運行--name some-rabbit
: 給容器起個名字-p 5672:5672
: 將主機的 5672 端口映射到容器的 5672 端口 (AMQP)-p 15672:15672
: 將主機的 15672 端口映射到容器的 15672 端口 (Web 管理)rabbitmq:3-management
: 使用官方的、包含管理插件的鏡像
-
登錄和使用:
- 瀏覽器訪問
http://localhost:15672
。 - 使用默認的用戶名
guest
和密碼guest
登錄。
- 瀏覽器訪問
總結與推薦
- 對于初次學習和希望與本地系統緊密結合的用戶,方法一 (
zypper
) 是一個非常好的開始,能讓您熟悉系統服務的管理。 - 當您未來項目變得更復雜,或者想快速搭建一個干凈的測試環境時,方法二 (Docker) 會是更現代、更靈活、更受歡迎的選擇。