Mac M系列芯片(M1/M2)Docker安装Zookeeper并持久化数据

本文基于Zookeeper3.8.2进行说明

拉取镜像

docker pull zookeeper:3.8.2

查看已拉取到本地的镜像

docker image ls

启动容器

启动前准备

查看Zookeeper官方镜像说明(https://hub.docker.com/_/zookeeper)可以知道,官方镜像的默认配置文件在容器内的/conf/zoo.cfg路径下:

进入容器查看默认配置文件内容:

由于官方默认配置已满足要求,因此笔者不再对配置文件进行挂载,仅对数据保存目录进行挂载。(有需要用自己配置的读者,可以自行挂载配置,或容器启动后进入容器进行修改)

创建数据存储目录

宿主机创建数据存储目录(可以是其他位置,/Users/leo笔者Mac上的用户目录,等价于~目录,读者自行调整目录)

mkdir /Users/leo/docker/zookeeper
mkdir /Users/leo/docker/zookeeper/data
mkdir /Users/leo/docker/zookeeper/datalog

运行容器

docker run -p 2181:2181 --name zookeeper \
-v /Users/leo/docker/zookeeper/data:/data \
-v /Users/leo/docker/zookeeper/datalog:/datalog \
-d zookeeper:3.8.2

参数说明:

  • docker run:运行Docker镜像
  • -p:映射端口号,宿主机端口映射到容器内部端口
  • --name zookeeper:设置容器名称为zookeeper
  • -v /Users/leo/docker/zookeeper/data:/data:将容器的/data目录挂载到宿主机的/Users/leo/docker/redis/data目录(数据持久化)
  • -v /Users/leo/docker/zookeeper/datalog:/datalog:同上
  • -d zookeeper:3.8.2:选择运行的Docker镜像并指定Tag(不指定的话默认是latest)

测试

进入容器

docker exec -ti zookeeper bash

运行zk客户端脚本zkCli.sh,执行ls / 命令能看到[zookeeper]即可,执行结果如下图所示

./bin/zkCli.sh
ls /

猜你喜欢

转载自blog.csdn.net/Tan_LC/article/details/132878359