一、安装单机版
1、拉取镜像
docker pull zookeeper
2、创建挂载目录
mkdir -p /mydata/zookeeper/{conf,data,logs}
3、新建配置文件
cd /mydata/zookeeper/conf
vi zoo.cfg
dataDir=/data
dataLogDir=/logs
tickTime=2000
initLimit=10
syncLimit=5
clientPort=2181
4、单机主机启动容器
docker run -d \--name zookeeper \--privileged=true \-p 2181:2181 \-e TZ="Asia/Shanghai" \--network host \--restart=always \-v /mydata/zookeeper/conf:/conf \-v /mydata/zookeeper/data:/data \-v /mydata/zookeeper/logs:/logs \zookeeper
命令说明:
- –network host: 使用主机上的网络配置,如果不用这种模式,而用默认的bridge模式,会导致容器跨主机间通信失败
- -v /mydata/zookeeper/conf:/conf: 主机的配置目录挂载到容器的/conf下,容器内的zkServer.sh默认会读取/conf/zoo.cfg下的配置
- -v /mydata/zookeeper/data:/data:主机的数据目录挂载到容器/data下
- -v /mydata/zookeeper/logs:/logs:主机的数据目录挂载到容器/logs下
- 启动完成后,单机主机的2181端口开放出来了(注意:这种配置通过127.0.0.1:2181不能访问zookeeper,只能访问192.168.56.10:2181)
5、检查容器的启动情况
docker exec -it zookeeper /bin/bash
cd bin
zkServer.sh status
成功如下: