
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
Apache Druid 是一款高性能实时分析数据库,旨在缩短从数据到洞察与行动的时间。其核心优势在于快速的数据摄入和查询能力,适用于需要实时分析、高并发查询及交互式数据探索的场景。
Apache Druid Docker 镜像(apache/druid)提供了便捷的容器化部署方案,简化了 Druid 集群的搭建流程,确保环境一致性,并支持灵活的配置与扩展。该镜像适用于开发测试、演示环境及中小规模生产部署。
单节点模式适合快速体验 Druid 功能,包含所有核心服务及内置依赖(ZooKeeper、元数据库)。
bashdocker run -d \ -p 8888:8888 \ # Web 控制台端口 -p 8081:8081 \ # Coordinator 端口 -p 8082:8082 \ # Overlord 端口 -p 8083:8083 \ # Broker 端口 -p 8084:8084 \ # Router 端口 -p 2181:2181 \ # ZooKeeper 端口 --name druid-quickstart \ apache/druid:latest \ bin/start-micro-quickstart
启动后,访问 http://localhost:8888 打开 Druid Web 控制台。
多组件模式适用于模拟生产环境,分离 Druid 各服务并使用外部依赖(如独立 ZooKeeper、PostgreSQL)。
4.3.1 docker-compose.yml 示例
yamlversion: '3.8' services: # ZooKeeper 依赖 zookeeper: image: docker.xuanyuan.run/zookeeper:3.8 ports: - "2181:2181" environment: ZOOKEEPER_CLIENT_PORT: 2181 volumes: - zk-data:/data - zk-datalog:/datalog # 元数据库(PostgreSQL) postgres: image: docker.xuanyuan.run/postgres:14 ports: - "5432:5432" environment: POSTGRES_DB: druid POSTGRES_USER: druid POSTGRES_PASSWORD: druid volumes: - pg-data:/var/lib/postgresql/data # Druid Coordinator(集群协调) coordinator: image: docker.xuanyuan.run/apache/druid:latest depends_on: - zookeeper - postgres ports: - "8081:8081" environment: - DRUID_XMX: "1g" - DRUID_XMS: "1g" - DRUID_CONFIG_COMMON: "common.runtime.properties" - DRUID_CONFIG_COORDINATOR: "coordinator.runtime.properties" - ZOOKEEPER_HOST: zookeeper - METADATA_STORAGE_TYPE: postgresql - METADATA_STORAGE_URL: jdbc:postgresql://postgres:5432/druid - METADATA_STORAGE_USER: druid - METADATA_STORAGE_PASSWORD: druid volumes: - druid-coordinator:/opt/druid/var # Druid Overlord(任务管理) overlord: image: docker.xuanyuan.run/apache/druid:latest depends_on: - zookeeper - postgres ports: - "8082:8082" environment: - DRUID_XMX: "1g" - DRUID_XMS: "1g" - DRUID_CONFIG_COMMON: "common.runtime.properties" - DRUID_CONFIG_OVERLORD: "overlord.runtime.properties" - ZOOKEEPER_HOST: zookeeper - METADATA_STORAGE_TYPE: postgresql - METADATA_STORAGE_URL: jdbc:postgresql://postgres:5432/druid - METADATA_STORAGE_USER: druid - METADATA_STORAGE_PASSWORD: druid volumes: - druid-overlord:/opt/druid/var # 更多服务(Broker、Router、Historical、MiddleManager)配置类似,略... volumes: zk-data: zk-datalog: pg-data: druid-coordinator: druid-overlord:
4.3.2 启动集群
bashdocker-compose up -d
Docker 镜像支持通过环境变量调整核心配置,关键参数如下:
| 环境变量 | 描述 | 默认值 |
|---|---|---|
DRUID_XMX | JVM 最大堆内存 | 1g |
DRUID_XMS | JVM 初始堆内存 | 1g |
ZOOKEEPER_HOST | ZooKeeper 连接地址 | localhost:2181 |
METADATA_STORAGE_TYPE | 元数据库类型(postgresql/mysql) | derby(内置,仅单节点用) |
METADATA_STORAGE_URL | 元数据库 JDBC URL | jdbc:derby://localhost:1527/var/druid/metadata.db |
METADATA_STORAGE_USER | 元数据库用户名 | druid |
METADATA_STORAGE_PASSWORD | 元数据库密码 | druid |
DRUID_CONFIG_COMMON | 通用配置文件名 | common.runtime.properties |
DRUID_CONFIG_<ROLE> | 服务角色配置文件(如 COORDINATOR) | <role>.runtime.properties |
通过挂载卷(Volumes)持久化 Druid 数据和配置:
/opt/druid/var(包含 segments、任务日志等)/opt/druid/conf(可挂载自定义配置文件覆盖默认值)示例(挂载自定义配置):
bashdocker run -d \ -v ./custom-conf:/opt/druid/conf \ # 挂载自定义配置 apache/druid:latest
Druid 配置主要通过 runtime.properties 文件定义,Docker 镜像默认配置位于 /opt/druid/conf。关键配置项如下:
| 配置项 | 描述 | 示例值 |
|---|---|---|
druid.zk.service.host | ZooKeeper 地址 | zookeeper:2181 |
druid.metadata.storage.connector.connectURI | 元数据库连接 URI | jdbc:postgresql://postgres:5432/druid |
druid.coordinator.startAsLeader | Coordinator 是否以 leader 模式启动 | true |
druid.server.http.numThreads | HTTP 服务线程数 | 60 |
druid.processing.buffer.sizeBytes | 处理缓冲区大小 | 134217728(128MB) |
DRUID_XMX/DRUID_XMS)和处理线程数,避免 OOM。apache/druid:28.0.0),升级前参考官方迁移文档。您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务
以下是 apache/druid 相关的常用 Docker 镜像,适用于 不同场景 等不同场景: