Docker インストール rocketMQ チュートリアル (最も詳細)

Docker インストール rocketMQ チュートリアル (最も詳細)

RocketMQ は、Alibaba が設計した分散型のキューベースのメッセージング ミドルウェアで、次の機能を備えています。

  • 厳密なメッセージ順序付けをサポート
  • トピックモードとキューモードをサポート
  • 数十億のメッセージが蓄積される可能性がある
  • フレンドリーな分散機能
  • メッセージの消費にはプッシュモードとプルモードの両方をサポート
  • Tmall Double 11の大量メッセージの多くのテストの後
  • RocketMQ は純粋な Java で記述されており、通信フレームワーク Netty に基づいています。

実際、編集者は、RocketMQ が Tmall Double Eleven の膨大なメッセージ量のテストに何度も耐えてきたため、RocketMQ を選択すべきだと感じています。さらに、数十億のメッセージを蓄積する能力があります。このような強力なコンポーネントは、新しいダークホースです。次に、Centos7 で docker を使用して rocketMQ をインストールする方法を説明します。

1. Namesrvをインストールする

画像をプルする

docker pull rocketmqinc/rocketmq:4.4.0 

/usr/localディレクトリに新しいフォルダmqを作成します。

コマンド: mkdir mq

コンテナを起動する

docker run -d -p 9876:9876 -v {独自のパス}/data/namesrv/logs:/root/logs -v {RmHome}/data/namesrv/store:/root/store --name rmqnamesrv -e "MAX_POSSIBLE_HEAP=100000000" rocketmqinc/rocketmq:4.4.0 sh mqnamesrv

以下に示すように、私のパスは/usr/local/mqです。

パスは自分でカスタマイズできます。パスを置き換えるだけ

予防

{your own path} は、ホスト マシン上で MQ ログとデータを保存する場所に置き換える必要があります。Docker の -v パラメータを介してボリューム機能を使用して、ローカル ディレクトリをコンテナー内のディレクトリにマップします。それ以外の場合、すべてのデータはデフォルトでコンテナ ランタイムのメモリに保存され、再起動後に元の開始点に戻ります。

2. ブローカーをインストールする

broker.conf ファイルを作成する

1: {own path}/confディレクトリにbroker.confファイルを作成します。

以前の/usr/local/mqディレクトリに入り、mkdir confコマンドを入力して新しいconfディレクトリを作成します。

次に、confディレクトリにコマンドtouch broker.confを入力して新しいファイルを作成します。

vi broker.conf コマンドを入力し、キーボードの Insert キーを押して挿入を開始します。

broker.confに以下を記述します

ブローカークラスタ名 = デフォルトクラスタ
ブローカー名 = ブローカー-a
ブローカーID = 0
削除時 = 04
ファイル予約時間 = 48
ブローカーロール = ASYNC_MASTER
フラッシュディスクタイプ = ASYNC_FLUSH
brokerIP1 = {ローカルパブリックIP} 

(私のサーバーは Alibaba Cloud です。矢印はパブリック IP アドレスを示しています)

入力後、Escキーを押し、Shiftキーを押し、Vキーを押します。

終了するにはwq!と入力してください

コンテナを起動する

docker run -d -p 10911:10911 -p 10909:10909 -v {独自のパス}/data/broker/logs:/root/logs -v {独自のパス}/rocketmq/data/broker/store:/root/store -v {独自のパス}/conf/broker.conf:/opt/rocketmq-4.4.0/conf/broker.conf --name rmqbroker --link rmqnamesrv:namesrv -e "NAMESRV_ADDR=namesrv:9876" -e "MAX_POSSIBLE_HEAP=200000000" rocketmqinc/rocketmq:4.4.0 sh mqbroker -c /opt/rocketmq-4.4.0/conf/broker.conf 

予防

知らせ: {独自のパス}は前の手順と同じなので、ここでは繰り返されません。 broker.conf ファイル内の brokerIP1 は、Namesrv に登録されているブローカーの IP です。指定しない場合は、デフォルトでコンテナの内部 IP アドレスが使用されます。アプリケーションがネットワークに接続されたコンテナーにもデプロイされていない限り、ブローカー サービスにローカルまたはコンテナー外部で接続できず、RemotingTooMuchRequestException などのさまざまな例外が発生します。

3. RocketMQコンソールをインストールする

画像をプルする

docker pull styletang/rocketmq-console-ng 

ミラードッカーpsを表示

RocketMQコンソールを起動する

docker run -e "JAVA_OPTS=-Drocketmq.namesrv.addr=サーバーのパブリックネットワークIP:9876 -Dcom.rocketmq.sendMessageWithVIPChannel=false" -p 8080:8080 -t styletang/rocketmq-console-ng 

実行ステータスを表示する

ステータスup で操作が成功したことを示しています。

ドッカーps -a 

ブラウザアクセス

ファイアウォールのポートを開くことを忘れないでください

以下もご興味があるかもしれません:
  • DockerにRocketMQをインストールするための実装手順
  • Docker Desktop で rocketmq をインストールするための非常に詳細なチュートリアル
  • Docker での RocketMQ の詳細なインストールと使用
  • RocketMQ の Docker インストールとインストール中に発生した問題の解決策

<<:  VUE ユニアプリテンプレート構文についての簡単な説明

>>:  XHTML 入門チュートリアル: よく使われる XHTML タグ

推薦する

Angular CLI リリース パスの構成項目の簡単な分析

序文プロジェクトのリリースでは、常に特定の状況に応じたパッケージ化が必要です。Angular CLI...

vue3.0+vant3.0の迅速なプロジェクト構築の実装

目次1. プロジェクトの構築2. Vue3 体験 + Vant 紹介2020年9月18日にvue.j...

Node.js での SerialPort モジュールの使用

目次目的モジュールのインストール基本的な使い方ポートをスキャンする開いているポートデータの送信データ...

VM VirtualBox 仮想マシンのマウント共有フォルダ

一つの環境CentOS 7にVMware Toolsをインストールしてホストの共有フォルダへのアクセ...

ミニプログラムは左スライドのドロワーメニューをネイティブに実装します

目次WXS レスポンス イベントプランAページ構造とスタイルWXS イベントコールバック関数WXS ...

Dockerコンテナでyumを呼び出すときのエラーの解決方法

dockerfile またはコンテナ内で yum を実行すると、エラーが報告され、ソースが見つかりま...

動的なデジタル時計を実装するJavaScript

この記事では、JavaScriptで動的なデジタル時計を実装するための具体的なコードを参考までに紹介...

TS 数値区切り文字とより厳密なクラス属性チェックの詳細な説明

目次概要演算子の改良と正確なinstanceofよりスマートなオブジェクトリテラル推論固有のシンボル...

CSS リセットスタイルリセットの実装例

はじめに: すべてのブラウザには、「ユーザー エージェント スタイル シート」と呼ばれる、すべてのペ...

Linux で scp コマンドを使用してファイルをリモートでコピーする方法の詳細な説明

序文scp は secure copy の略です。scp は、Linux システムの ssh ログイ...

Mac で Docker を使用して Oracle をデプロイする方法

Mac で Docker を使用して Oracle をデプロイする方法まずdockerをインストール...

JS Canvas インターフェースとアニメーション効果

目次概要Canvas API: グラフィックスの描画パス線種矩形アーク文章グラデーションと画像の塗り...

Docker データボリュームの一般的な操作コードの例

開発者が Dockerfile を使用してイメージをビルドする場合は、イメージをビルドするときにデー...

Docker Hubの動作原理と実装プロセスの分析

GitHub が提供するコード ホスティング サービスと同様に、Docker Hub はイメージ ホ...

Ubuntu 19.10 で ssh サービスを有効にする (詳細なプロセス)

Ubuntuでsshを開くのに1時間以上かかりました。主な原因は、最初に読んだチュートリアルの手順...