
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
针对 ZooKeeper 应用的 Docker 镜像,用于提供 ZooKeeper 服务。
详细信息可参照:3.6.1官方说明
后续相关命令行默认使用https://hub.docker.com%E9%95%9C%E5%83%8F%E6%9C%8D%E5%8A%A1%E5%99%A8%E5%81%9A%E8%AF%B4%E6%98%8E
shell$ docker run -d -e ALLOW_ANONYMOUS_LOGIN=yes colovu/zookeeper:3.6
shell# 从 Gitee 下载 Compose 文件 $ curl -sSL -o docker-compose.yml https://gitee.com/colovu/docker-zookeeper/raw/master/docker-compose.yml # 从 Github 下载 Compose 文件 $ curl -sSL -o docker-compose.yml https://raw.githubusercontent.com/colovu/docker-zookeeper/master/docker-compose.yml # 创建并启动容器 $ docker-compose up -d
镜像默认提供以下数据卷定义,默认数据分别存储在自动生成的应用名对应zookeeper子目录中:
shell/var/log # 日志输出(应用日志,非数据日志);自动创建子目录zookeeper /srv/conf # 配置文件;自动创建子目录zookeeper /srv/data # 数据文件;自动创建子目录zookeeper /srv/datalog # 数据操作日志文件;自动创建子目录zookeeper
如需持久化存储数据,需在宿主机建立本地目录,并在初始化容器时进行映射。宿主机目录中若不存在对应Zookeeper子目录或数据文件,容器初始化时会自动创建。
初始化ZooKeeper容器时,若配置文件zoo.cfg不存在,可通过命令行设置环境变量修改默认参数,示例:
shell$ docker run -d -e "ZOO_INIT_LIMIT=10" --name zookeeper colovu/zookeeper
常用环境变量:
ZOO_ENABLE_AUTH,则必须设为yestickTime(基础时间单位,微秒),用于心跳、超时控制(如Session最小超时为2个Ticks)initLimit(ticks为单位),控制从服务器与Leader连接及同步时间,数据量大时可增大syncLimit(ticks为单位),控制从服务器同步数据时间,差距过大将被剔除maxClientCnxns,每个客户端允许的同时连接数(Socket层,按IP识别)standaloneEnabled。3.5.0新增,控制服务器工作模式(Standalone/Distributed),启动后不可切换。设为false支持后续动态扩展admin.enableServer。3.5.0新增,内置Jetty服务器提供HTTP访问端口支持四字命令,默认8080端口,访问方式:http://localhost:8080/commands/[command name]autoPurge.purgeIntervalautoPurge.snapRetainCount4lw.commands.whitelist无需特殊需求时可使用默认值:
ALL, DEBUG, INFO, WARN, ERROR, FATAL, OFF, TRACE;方式(可多个,逗号分隔):CONSOLE、ROLLINGFILE、TRACEFILE可通过以下参数配置ZooKeeper集群:
ZOO_SERVER_ID
默认值:1。服务器唯一ID(1~255)。若宿主机路径映射/srv/data且存在myid文件(容器内路径/srv/data/zookeeper/myid),则该参数失效。
ZOO_SERVERS
默认值:server.1=0.0.0.0:2888:3888。集群服务器列表,格式server.id=host:port:port(如server.2=192.168.0.1:2888:3888),多服务器用空格或逗号分隔。若宿主机路径映射/srv/conf且存在zoo.cfg文件(容器内路径/srv/conf/zookeeper/zoo.conf),则该参数失效,需手动修改配置文件并重启容器。
格式说明:server.X=A:B:C
server.:固定关键字更多信息参考 Zookeeper Dynamic Reconfiguration。
证书加密传输相关配置:
默认禁用无密码访问,生产环境建议使用用户名密码控制;测试时可启用***访问:
shellALLOW_ANONYMOUS_LOGIN=yes
通过ZOO_ENABLE_AUTH启用基于SASL/Digest-MD5的认证,需同时设置用户名密码。启用后,zkCli.sh需通过. /usr/local/bin/entrypoint.sh使用默认密码认证。
命令行示例:
shell$ docker run -d -e ZOO_ENABLE_AUTH=yes \ -e ZOO_SERVER_USERS=user1,user2 \ -e ZOO_SERVER_PASSWORDS=pass4user1,pass4user2 \ -e ZOO_CLIENT_USER=user1 \ -e ZOO_CLIENT_PASSWORD=pass4user1 \ colovu/zookeeper
Docker Compose配置示例:
yamlservices: zookeeper: ... environment: - ZOO_ENABLE_AUTH=yes - ZOO_SERVER_USERS=user1,user2 - ZOO_SERVER_PASSWORDS=pass4user1,pass4user2 - ZOO_CLIENT_USER=user1 - ZOO_CLIENT_PASSWORD=pass4user1 ...
默认使用non-root用户运行应用以增强安全性,应用仅能操作指定路径及数据,适合生产环境。如需切换为root运行,启动命令中增加-u root。
本文原始来源 https://github.com/colovu @ https://github.com
以下是 colovu/zookeeper 相关的常用 Docker 镜像,适用于 不同场景 等不同场景:
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。


来自真实用户的反馈,见证轩辕镜像的优质服务