zookeeper

启动

#!/bin/bash
#timezone
echo 'Asia/Shanghai' > /etc/timezone

port=2181

adminPort=$(( ${port} + 6000 ))


docker stop zk-${port}
docker rm zk-${port}
docker run -d \
-m 2048m \
--name zk-${port} \
--restart=always \
--net host \
-v /etc/localtime:/etc/localtime:ro \
-v /etc/timezone:/etc/timezone:ro \
-v $(pwd)/data-${port}:/data \
-v $(pwd)/datalog-${port}:/datalog \
-e JVMFLAGS="-Xmx512m" \
-e "TZ=Asia/Shanghai" \
-e "ZOO_CLIENT_PORT=${port}" \
-e "ZOO_MY_ID=1" \
-e "ZOO_INIT_LIMIT=5" \
-e "ZOO_SYNC_LIMIT=5" \
-e "ZOO_SERVERS=server.1=0.0.0.0:2888:3888" \
-e "ZOO_MAX_CLIENT_CNXNS=60" \
-e "ZOO_STANDALONE_ENABLED=false" \
-e "ZOO_AUTOPURGE_SNAPRETAINCOUNT=100" \
-e "ZOO_AUTOPURGE_PURGEINTERVAL=1" \
-e "ZOO_TICK_TIME=2000" \
-e JVMFLAGS="-Dzookeeper.admin.enableServer=true -Dzookeeper.admin.serverPort=${adminPort}" \
-e ZOO_CFG_EXTRA="clientPort=${port}" \
zookeeper:3.9

# ZOO_CLIENT_PORT 3.5及以后的版本才生效
# 3.4设置端口可以用 -e ZOO_CFG_EXTRA="clientPort=2181"
# 集群配置(记得修改ZOO_MY_ID)
# -e "ZOO_SERVERS=server.1=0.0.0.0:2888:3888;2181 server.2=0.0.0.0:2888:3888;2181 server.3=0.0.0.0:2888:3888;2181" \

zk-web

#!/bin/bash

##################
# zookeeper 页面
##################

zk_server="192.168.1.1:2181"

docker rm -f zk-web
docker run -d \
--restart=always \
--net host \
-e HTTP_PORT=8080 \
-e ZK_DEFAULT_NODE=${zk_server}/ \
--name zk-web \
-t tobilg/zookeeper-webui