1. 首页 > 云服务器

centos6使用docker部署zookeeper操作示例

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

目录结构:

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

Dockerfile

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18
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

?

1

2

3

4

5

6

7

8

9

10

11

12

13
#!/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

?

1

2

3

4

5

6

7

8

9

10
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

测试安装部署

?

1
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容器使用有所帮助。

原文链接:https://my.oschina.net/qiongtaoli/blog/902210

本文由服务器主机测评网发布,不代表服务器主机测评网立场,转载联系作者并注明出处:https://www.kuaiidc.com/fuwuqi/140.html

联系我们

在线咨询:点击这里给我发消息

Q Q:1524578900