CentOS 6 は Docker を使用して Zookeeper 操作例を展開します

CentOS 6 は Docker を使用して Zookeeper 操作例を展開します

この記事では、Docker を使用して Centos6 に Zookeeper をデプロイする方法について説明します。ご参考までに、詳細は以下の通りです。

ディレクトリ構造:

/動物園の飼育係
/Dockerファイル
./start.sh
/Readme
/zookeeper-3.4.10.tar.gz

Dockerファイル

Centosより
メンテナー qiongtao.li [email protected]
./zookeeper-3.4.10.tar.gz /opt を追加します。
./start.sh /start.sh を追加します
環境変数 ZOO_PORT=2181\
 ZOO_DIR=/opt/zookeeper \
 ZOO_DATA_DIR=/data/zookeeper/データ
 ZOO_DATA_LOG_DIR=/data/zookeeper/logs
RUN echo "Asia/shanghai" > /etc/timezone \
 && cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
 && yum -y java をインストール \
 && mkdir -p "$ZOO_DATA_DIR" \
 && mkdir -p "$ZOO_DATA_LOG_DIR" \
 && mv /opt/zookeeper-3.4.10 "$ZOO_DIR"
ボリューム ["$ZOO_DATA_DIR"]
$ZOO_PORTを公開する
環境変数PATH=$PATH:$ZOO_DIR/bin
エントリポイント ["sh", "/start.sh"]

スタート

#!/bin/bash
設定 = ${ZOO_DIR}/conf/zoo.cfg
cp -a ${ZOO_DIR}/conf/zoo_sample.cfg $CONF
sed -i "s|データディレクトリ=/tmp/zookeeper|データディレクトリ=${ZOO_DATA_DIR}|g" $CONF
sed -i "s|クライアントポート=2181|クライアントポート=${ZOO_PORT}|g" $CONF
echo "dataLogDir=${ZOO_DATA_LOG_DIR}" >> $CONF
$ZOO_SERVERSのサーバーの場合、
 echo "$server" >> $CONF
終わり
if [ ! -f "$ZOO_DATA_DIR/myid" ]; then
 echo "${ZOO_MY_ID:-1}" > "$ZOO_DATA_DIR/myid"
フィ
zkServer.sh フォアグラウンド起動

お読みください

docker rm -f zk
docker rmi -f zk
docker build -t zk を実行します。
docker run -d \
 -p 2181:2181 \
 --name zk \
  -v /データ:/データ\
 ず
ドッカーps -a
docker ログ -f zk

インストールと展開をテストする

cat Readme|行を読み取りながら、$line を実行します。完了

Zookeeperのダウンロードアドレス:

https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/stable/zookeeper-3.4.10.tar.gz

この記事が Docker コンテナの使用に役立つことを願っています。

以下もご興味があるかもしれません:
  • Docker で Zookeeper をインストールする (スタンドアロンおよびクラスター)
  • Zookeeper&Kafka クラスターを構築するための Docker の実装
  • Docker に Zookeeper を素早くインストールする方法の詳細なチュートリアル

<<:  SQL でテーブルにフィールドとコメントを追加する方法

>>:  Reactでプロキシを有効にする2つの実用的な方法

推薦する

MYSQLは継続サインイン機能を実装しており、サインイン後1日経過すると最初から開始します(SQL文)

1. テストテーブルを作成する テーブル `testsign` を作成します ( `userid`...

MySQL InnoDB ストレージエンジンのメモリ管理の詳細な説明

目次ストレージエンジンのメモリ管理データ ページを LRU キューの先頭に置かないのはなぜですか?ダ...

ウィンドウ環境で VScode を使用して仮想マシン MySQL に接続する方法

1. 仮想マシン側1. MySQLの設定ファイルを見つける:sudo vim /etc/mysql/...

トップに戻るボタンを実装するJavaScript

この記事では、トップに戻るボタンを実装するためのJavaScriptの具体的なコードを参考までに紹介...

スタイル属性 (element.style) で定義されたインライン スタイルを削除する方法

Magento を頻繁に変更する場合、element.style に遭遇することがあります。 これは...

Vue における ref と $refs の紹介と使用例

序文JavaScript では、document.querySelector("#demo...

友達やグループを見つけるためのJavaScriptのLayim

現在、layuiの関係者はlayim友達検索ページの構造とスタイルを提供していません。私は個人的に非...

CSS floatプロパティの詳細な説明

1. フローティングとは何ですか?フローティングは、その名の通り、浮遊することを意味します。要素がド...

MySQL のスロークエリの方法と例

1. はじめにスロークエリログを有効にすると、MySQL は指定された時間を超えるクエリステートメン...

Vueは宮殿のグリッド回転抽選を実現します

Vueは宮殿グリッド回転抽選(CrossFireのxx転生に似ている)を実装しています。参考までに、...

VMware Workstation Pro は Win10 ピュア バージョンのオペレーティング システムをインストールします

この記事では、VMware Workstation Pro で Win10 オペレーティング システ...

MySQLdump コマンドを使用した MySQL データの移行

このソリューションの利点はシンプルさと使いやすさですが、欠点はダウンタイムが長くなることです。 した...

レスポンシブデザインについて知っておくべきこと

レスポンシブデザインとは、ウェブサイトの開発プロセス中に、ユーザーの操作やデバイス環境に応じて対応す...

CSS 要素を表示および非表示にする 9 つの方法

Web ページの制作では、要素の表示と非表示は非常に一般的な要件です。この記事では、要素を表示したり...

Vue は Tencent Map を統合して API を実装します (デモ付き)

目次執筆の背景プロジェクトの説明事前準備注記執筆の背景以前のプロジェクトではTencent Maps...