亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Docker部署RocketMQ超詳細步驟(圖文并茂)

 更新時間:2025年04月23日 10:58:13   作者:水藍煙雨  
RocketMQ?是一款開源的分布式消息隊列系統(tǒng),具有低延遲、高并發(fā)、高可用等特性,這篇文章主要介紹了Docker部署RocketMQ超詳細步驟的相關(guān)資料,通過這些步驟,用戶可以成功搭建一個RocketMQ集群,并通過控制臺進行管理和監(jiān)控,需要的朋友可以參考下

部署 RocketMQ ( Docker )

[Step 1] :拉取 RocketMQ 鏡像

docker pull apache/rocketmq:5.1.0

[Step 2] : 創(chuàng)建容器共享網(wǎng)絡(luò) rocketmq

docker network create rocketmq

為什么要創(chuàng)建 docker 共享網(wǎng)絡(luò)?

  • 容器間通信:創(chuàng)建一個 Docker 網(wǎng)絡(luò)可以確保同一個網(wǎng)絡(luò)中的容器可以通過容器名稱進行通信,而不需要知道對方的 IP 地址。這對于需要相互通信的服務(wù)非常重要,比如 RocketMQ 的多個組件(如 NameServer 和 Broker)。
  • 隔離性和安全性:Docker 網(wǎng)絡(luò)提供了一個隔離的網(wǎng)絡(luò)環(huán)境,不同網(wǎng)絡(luò)中的容器彼此隔離。這增加了安全性,防止外部或其他不相關(guān)的容器訪問敏感服務(wù)。
  • 簡化配置:使用 Docker 網(wǎng)絡(luò),配置變得更加簡單。容器可以通過名稱互相訪問,無需擔(dān)心容器重啟后 IP 地址發(fā)生變化。

[Step 3] : 部署 NameServer 前提條件

創(chuàng)建目錄?? 授予文件 ?? 創(chuàng)建容器 ?? 拷貝啟動腳本 ?? 刪除容器

# 創(chuàng)建目錄
mkdir -p /data/rocketmq/nameserver/{bin,logs}

# 授權(quán)文件
chmod 777 -R /data/rocketmq/nameserver/*

# 創(chuàng)建容器
docker run -d \
--privileged=true --name rmqnamesrv \
apache/rocketmq:5.1.0 sh mqnamesrv

# 拷貝啟動腳本
docker cp rmqnamesrv:/home/rocketmq/rocketmq-5.1.0/bin/runserver.sh /data/rocketmq/nameserver/bin/

# 刪除容器 NameServer
docker rm -f rmqnamesrv

[Step 4] : 啟動容器 NameServer

# 啟動容器 NameServer
docker run -d --network rocketmq \
--privileged=true --restart=always \
--name rmqnamesrv -p 9876:9876 \
-v /data/rocketmq/nameserver/logs:/home/rocketmq/logs \
-v /data/rocketmq/nameserver/bin/runserver.sh:/home/rocketmq/rocketmq-5.1.0/bin/runserver.sh \
apache/rocketmq:5.1.0 sh mqnamesrv

# 部分命令解釋 : 
1. -e "MAX_HEAP_SIZE=256M" 設(shè)置最大堆內(nèi)存和堆內(nèi)存初始大小
2. -e "HEAP_NEWSIZE=128M"  設(shè)置新生代內(nèi)存大小

# 查看啟動日志
docker logs -f rmqnamesrv

[Step 5] : 查看 NameServer 啟動日志

  • 看到 ‘The Name Server boot success…’, 表示NameServer 已成功啟動。

[Step 6] : 部署 Broker + Proxy

  • 創(chuàng)建掛載文件夾并授權(quán)
mkdir -p /data/rocketmq/broker/{store,logs,conf,bin}
chmod 777 -R /data/rocketmq/broker/*

[Step 7] : 創(chuàng)建broker.cnf文件

vim /data/rocketmq/broker/conf/broker.conf

# nameServer 地址多個用;隔開 默認值null
# 例:127.0.0.1:6666;127.0.0.1:8888 
namesrvAddr = 192.168.100.100:9876
# 集群名稱
brokerClusterName = DefaultCluster
# 節(jié)點名稱
brokerName = broker-a
# broker id節(jié)點ID, 0 表示 master, 其他的正整數(shù)表示 slave,不能小于0 
brokerId = 0
# Broker服務(wù)地址	String	內(nèi)部使用填內(nèi)網(wǎng)ip,如果是需要給外部使用填公網(wǎng)ip
brokerIP1 = 192.168.100.100
# Broker角色
brokerRole = ASYNC_MASTER
# 刷盤方式
flushDiskType = ASYNC_FLUSH
# 在每天的什么時間刪除已經(jīng)超過文件保留時間的 commit log,默認值04
deleteWhen = 04
# 以小時計算的文件保留時間 默認值72小時
fileReservedTime = 72
# 是否允許Broker 自動創(chuàng)建Topic,建議線下開啟,線上關(guān)閉
autoCreateTopicEnable=true
# 是否允許Broker自動創(chuàng)建訂閱組,建議線下開啟,線上關(guān)閉
autoCreateSubscriptionGroup=true
# 禁用 tsl
tlsTestModeEnable = false

# 下面是沒有注釋的版本, 記得修改"namesrvAddr", "brokerIP1"的地址
namesrvAddr = 192.168.100.233:9876
brokerClusterName = DefaultCluster
brokerName = broker-a
brokerId = 0
brokerIP1 = 192.168.100.233
brokerRole = ASYNC_MASTER
flushDiskType = ASYNC_FLUSH
deleteWhen = 04
fileReservedTime = 72
autoCreateTopicEnable=true
autoCreateSubscriptionGroup=true
tlsTestModeEnable = false

[Step 8] : 拷貝啟動腳本

# 啟動 Broker 容器
docker run -d \
--name rmqbroker --privileged=true \
apache/rocketmq:5.1.0 sh mqbroker

# 拷貝腳本文件
docker cp rmqbroker:/home/rocketmq/rocketmq-5.1.0/bin/runbroker.sh /data/rocketmq/broker/bin

[Step 9] : 啟動容器 Broker

# 刪除容器 Broker
docker rm -f rmqbroker

# 啟動容器 Broker
docker run -d --network rocketmq \
--restart=always --name rmqbroker --privileged=true \
-p 10911:10911 -p 10909:10909 \
-v /data/rocketmq/broker/logs:/root/logs \
-v /data/rocketmq/broker/store:/root/store \
-v /data/rocketmq/broker/conf/broker.conf:/home/rocketmq/broker.conf \
-v /data/rocketmq/broker/bin/runbroker.sh:/home/rocketmq/rocketmq-5.1.0/bin/runbroker.sh \
-e "NAMESRV_ADDR=rmqnamesrv:9876" \
apache/rocketmq:5.1.0 sh mqbroker --enable-proxy -c /home/rocketmq/broker.conf

# 查看啟動日志
docker logs -f rmqbroker
  • 啟動成功日志如下

[Step 10] : 部署RocketMQ控制臺(rocketmq-dashboard)

  • 拉取鏡像
docker pull apacherocketmq/rocketmq-dashboard:latest

[Step 11] : 啟動容器 Rocketmq-dashboard

docker run -d \
--restart=always --name rmq-dashboard \
-p 8080:8080 --network rocketmq \
-e "JAVA_OPTS=-Xmx256M -Xms256M -Xmn128M -Drocketmq.namesrv.addr=rmqnamesrv:9876 -Dcom.rocketmq.sendMessageWithVIPChannel=false" \
apacherocketmq/rocketmq-dashboard

[Step 12] : 查看啟動日志

docker logs -f rmq-dashboard

[Step 13] : 訪問RMQ控制臺

  • http://192.168.100.233:8080/ ( IP地址改成自己的 )

[Step 14] : 查看創(chuàng)建的 RocketMQ

總結(jié) 

到此這篇關(guān)于Docker部署RocketMQ超詳細步驟的文章就介紹到這了,更多相關(guān)Docker部署RocketMQ內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Docker鏡像加載原理

    Docker鏡像加載原理

    Docker鏡像是Docker容器運行的基礎(chǔ),沒有Docker鏡像,就不可能有Docker容器,這也是Docker的設(shè)計原則之一 ,本文給大家介紹Docker鏡像加載原理,感興趣的朋友一起看看吧
    2021-06-06
  • docker構(gòu)建的鏡像的三種方式小結(jié)

    docker構(gòu)建的鏡像的三種方式小結(jié)

    這篇文章主要為大家詳細介紹了docker中構(gòu)建的鏡像的三種方式,文中的示例代碼講解詳細,具有一定的借鑒價值,有需要的小伙伴可以參考一下
    2024-04-04
  • 使用Distroless提高容器安全

    使用Distroless提高容器安全

    這篇文章主要為大家介紹了使用Distroless提高容器安全,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-11-11
  • Docker配置本地倉庫web訪問的實現(xiàn)

    Docker配置本地倉庫web訪問的實現(xiàn)

    本文主要介紹了Docker配置本地倉庫web訪問的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-06-06
  • Docker 容器操作退出后進入解決辦法

    Docker 容器操作退出后進入解決辦法

    這篇文章主要介紹了Docker 容器操作退出后進入解決辦法的相關(guān)資料,需要的朋友可以參考下
    2016-10-10
  • docker報錯Container is not running問題及解決

    docker報錯Container is not running問題及解決

    這篇文章主要介紹了docker報錯Container is not running問題及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • docker pull拉取超時的解決方案

    docker pull拉取超時的解決方案

    這篇文章主要介紹了docker pull拉取超時的解決方案,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • Docker?Desktop?安裝的詳細步驟

    Docker?Desktop?安裝的詳細步驟

    作為開發(fā)人員,在日常開發(fā)中,我們需要在本地去啟動一些服務(wù),可以使用Docker?Desktop,本文主要介紹了Docker?Desktop?安裝的詳細步驟,感興趣的可以了解一下
    2023-08-08
  • ubuntu如何完全干凈的卸載docker

    ubuntu如何完全干凈的卸載docker

    這篇文章主要介紹了ubuntu如何完全干凈的卸載docker問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • Docker打包SpringBoot鏡像的實現(xiàn)方式

    Docker打包SpringBoot鏡像的實現(xiàn)方式

    docker打包springboot鏡像,并不是簡單的將springboot項目的jar包上傳容器里,然后啟動,這個操作很簡單,但是如果我每次要查看容器中的日志就需要每次都進入容器內(nèi)部進行查看,這就非常麻煩了,所以本文介紹了Docker打包SpringBoot鏡像的實現(xiàn)方式,需要的朋友可以參考下
    2024-03-03

最新評論