centos6使用docker部署zookeeper操作示例

(编辑:jimmy 日期: 2024/12/24 浏览:2)

本文实例讲述了centos6使用docker部署zookeeper操作。分享给大家供大家参考,具体如下:

目录结构:

/zookeeper
    /Dockerfile
    /start.sh
    /Readme
    /zookeeper-3.4.10.tar.gz

Dockerfile

FROM centos
MAINTAINER qiongtao.li hnatao@126.com
ADD ./zookeeper-3.4.10.tar.gz /opt
ADD ./start.sh /start.sh
ENV ZOO_PORT=2181 ZOO_DIR=/opt/zookeeper  ZOO_DATA_DIR=/data/zookeeper/data
 ZOO_DATA_LOG_DIR=/data/zookeeper/logs
RUN echo "Asia/shanghai" > /etc/timezone  && cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime  && yum -y install java  && mkdir -p "$ZOO_DATA_DIR"  && mkdir -p "$ZOO_DATA_LOG_DIR"  && mv /opt/zookeeper-3.4.10 "$ZOO_DIR"
VOLUME ["$ZOO_DATA_DIR"]
EXPOSE $ZOO_PORT
ENV PATH=$PATH:$ZOO_DIR/bin
ENTRYPOINT ["sh", "/start.sh"]

start.sh

#!/bin/bash
CONF=${ZOO_DIR}/conf/zoo.cfg
cp -a ${ZOO_DIR}/conf/zoo_sample.cfg $CONF
sed -i "s|dataDir=/tmp/zookeeper|dataDir=${ZOO_DATA_DIR}|g" $CONF
sed -i "s|clientPort=2181|clientPort=${ZOO_PORT}|g" $CONF
echo "dataLogDir=${ZOO_DATA_LOG_DIR}"  $CONF
for server in $ZOO_SERVERS; do
 echo "$server"  $CONF
done
if [ ! -f "$ZOO_DATA_DIR/myid" ]; then
 echo "${ZOO_MY_ID:-1}" > "$ZOO_DATA_DIR/myid"
fi
zkServer.sh start-foreground

Readme

docker rm -f zk
docker rmi -f zk
docker build -t zk .
docker run -d  -p 2181:2181  --name zk   -v /data:/data  zk
docker ps -a
docker logs -f zk

测试安装部署

cat Readme|while read line; do $line; done

zookeeper下载地址:

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

希望本文所述对大家Docker容器使用有所帮助。

一句话新闻

一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?