
如果你使用 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镜像3.3.6版本的commit https://github.com/31z4/zookeeper-docker/tree/9f00dd78dcd67baa9b57449329fcbd4744948326%E6%9E%84%E5%BB%BA%E3%80%82
Dockerfile 链接3.4.5, latest https://github.com/manios/zookeeper-docker/blob/master/3.4.5/Dockerfilehttps://images.microbadger.com/badges/image/manios/zookeeper.svg](http://microbadger.com/images/manios/zookeeper) https://img.shields.io/travis/manios/zookeeper-docker/master.svg](https://travis-ci.org/manios/zookeeper-docker/branches)
Apache ZooKeeper是Apache软件基金会的一个开源项目,为大型分布式系统提供分布式配置服务、同步服务和命名注册功能。ZooKeeper最初是Hadoop的子项目,现在已成为独立的顶级项目。
***.org/wiki/Apache_ZooKeeper
bash$ docker run --name some-zookeeper --restart always -d manios/zookeeper
此镜像暴露端口 2181(Zookeeper客户端端口)、2888( follower端口)和3888(选举端口),因此标准容器链接可使链接的容器自动访问这些端口。由于Zookeeper采用"快速失败"机制,建议始终启用自动重启。
bash$ docker run --name some-app --link some-zookeeper:zookeeper -d application-that-uses-zookeeper
bash$ docker run -it --rm --link some-zookeeper:zookeeper manios/zookeeper zkCli.sh -server zookeeper
docker-compose.yml 示例:
yamlversion: '2' services: zoo1: image: docker.xuanyuan.run/manios/zookeeper:3.4.5 restart: always ports: - 2181:2181 - 2888:2888 - 3888:3888 environment: ZOO_MY_ID: 1 ZOO_SERVERS: server.1=zoo1:2888:3888 server.2=zoo2:2889:3889 server.3=zoo3:2890:3890 zoo2: image: docker.xuanyuan.run/manios/zookeeper:3.4.5 restart: always ports: - 2182:2181 - 2889:2889 - 3889:3889 environment: ZOO_MY_ID: 2 ZOO_SERVERS: server.1=zoo1:2888:3888 server.2=zoo2:2889:3889 server.3=zoo3:2890:3890 zoo3: image: docker.xuanyuan.run/manios/zookeeper:3.4.5 restart: always ports: - 2183:2181 - 2890:2890 - 3890:3890 environment: ZOO_MY_ID: 3 ZOO_SERVERS: server.1=zoo1:2888:3888 server.2=zoo2:2889:3889 server.3=zoo3:2890:3890
这将以http://zookeeper.apache.org/doc/current/zookeeperStarted.html#sc_RunningReplicatedZooKeeper%E5%90%AF%E5%8A%A8Zookeeper%E3%80%82%E8%BF%90%E8%A1%8C%60docker-compose up并等待初始化完成后,端口2181-2183`将被暴露。
请注意,在单台机器上设置多个服务器不会提供冗余。如果机器发生故障,所有Zookeeper服务器都将离线。完全冗余要求每个服务器拥有独立的物理机器,同一物理主机上的多个虚拟机仍面临主机完全故障的风险。
在复制模式下运行Zookeeper时,建议使用https://www.docker.com/products/docker-swarm%E3%80%82
Zookeeper配置文件位于/conf目录。修改配置的一种方式是将自定义配置文件挂载为卷:
bash$ docker run --name some-zookeeper --restart always -d -v $(pwd)/zoo.cfg:/conf/zoo.cfg manios/zookeeper
如果未提供zoo.cfg文件,将使用ZooKeeper推荐的默认配置。可通过以下环境变量覆盖默认值:
bash$ docker run -e "ZOO_INIT_LIMIT=10" --name some-zookeeper --restart always -d manios/zookeeper
ZOO_TICK_TIME默认值:2000。ZooKeeper的tickTime参数。
单个tick的时长(毫秒),是ZooKeeper使用的基本时间单位,用于调节心跳和超时。例如,最小会话超时为两个tick。
ZOO_INIT_LIMIT默认值:5。ZooKeeper的initLimit参数。
允许follower连接并同步到leader的时间(以tick为单位)。如果ZooKeeper管理的数据量较大,需适当增加此值。
ZOO_SYNC_LIMIT默认值:2。ZooKeeper的syncLimit参数。
允许follower与ZooKeeper同步的时间(以tick为单位)。如果follower落后leader过多,将被剔除。
ZOO_MAX_CLIENT_CNXNS默认值:60。ZooKeeper的maxClientCnxns参数。
限制单个客户端(按IP地址识别)与ZooKeeper集群中单个节点的并发连接数(socket级别)。
若要以复制模式运行Zookeeper,以下环境变量为必填项:
ZOO_MY_ID该ID在集群中必须唯一,取值范围为1-255。注意:如果启动容器时/data目录已包含myid文件,此变量将无效。
ZOO_SERVERS此变量用于指定Zookeeper集群的机器列表。每个条目格式为server.id=host:port:port,条目之间用空格分隔。注意:如果启动容器时/conf目录已包含zoo.cfg文件,此变量将无效。
此镜像配置了/data和/datalog卷,分别用于存储Zookeeper内存数据库快照和数据库更新事务日志。
注意事务日志的存储位置。专用的事务日志设备是保证良好性能的关键,将日志放在繁忙设备上会对性能产生负面影响。
查看此镜像中包含软件的https://github.com/apache/zookeeper/blob/release-3.4.5/LICENSE.txt%E3%80%82
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务
以下是 manios/zookeeper 相关的常用 Docker 镜像,适用于 不同场景 等不同场景: