
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
NineData DBClaw(数据库智能卫士)是一款 AI 原生的数据库诊断开源产品。它将数据库接入、指标监控、告警处理、自动巡检、知识增强和对话式诊断整合在一个私有化部署系统中,帮助 DBA、SRE 和平台团队更快发现问题、定位根因并沉淀运维经验。
https://github.com/ninedata-cloud/dbclaw
!https://github.com/ninedata-cloud/dbclaw/raw/main/docs/img/db_monitor.jpg
!https://github.com/ninedata-cloud/dbclaw/raw/main/docs/img/db_ai_diagnosis.jpg
bash# 使用 dockerhub 中央仓库 docker run -itd -p 9939:9939 --name dbclaw ninedata/dbclaw:latest
bashgit clone https://github.com/ninedata-community/dbclaw.git cd dbclaw
bashpython -m venv .venv source .venv/bin/activate pip install --upgrade pip pip install -r requirements.txt
bashcp .env.example .env
至少需要为本地开发确认这些配置:
envAPP_HOST=0.0.0.0 APP_PORT=9939 DATABASE_URL=postgresql+asyncpg://dbclaw:your-postgres-password@localhost:5432/dbclaw ENCRYPTION_KEY=your-fernet-key-here PUBLIC_SHARE_SECRET_KEY=replace-with-random-public-share-secret INITIAL_ADMIN_PASSWORD=admin1234
生成 ENCRYPTION_KEY:
bashpython -c "from cryptography.fernet import Fernet; print(Fernet.generate_key().decode())"
生产环境请使用强随机值替换 PUBLIC_SHARE_SECRET_KEY 和默认管理员密码。
bashpython run.py
启动后访问:
http://127.0.0.1:9939adminadmin1234,可通过 INITIAL_ADMIN_PASSWORD 覆盖首次登录后,建议先进入“AI 大模型管理”添加至少一个可用模型。未配置模型时,监控、巡检、数据源管理等基础能力仍可使用,但 AI 对话和 AI 诊断能力不可用。
DBClaw 提供统一的任务调度能力,用于执行周期性运维任务,例如巡检触发、指标同步、通知分发或自定义自动化流程。
操作入口:
text左侧导航 -> 任务调度管理
主要能力包括:
项目提供单容器镜像,容器内包含 PostgreSQL、FastAPI 服务和静态前端。首次启动时,如果未显式提供运行密钥和数据库参数,容器会自动生成并持久化到 /app/data/bootstrap/runtime.env。
bashdocker build -t dbclaw:latest . docker run -d \ --name dbclaw \ -p 9939:9939 \ -v dbclaw-pgdata:/var/lib/postgresql/data \ -v dbclaw-appdata:/app/data \ -v dbclaw-uploads:/app/uploads \ dbclaw:latest
发布指定版本镜像时可注入构建信息:
bashdocker build \ --build-arg APP_VERSION=1.0.0 \ --build-arg BUILD_COMMIT=$(git rev-parse --short HEAD) \ --build-arg BUILD_TIME=$(date -u +%Y-%m-%dT%H:%M:%SZ) \ -t dbclaw:1.0.0 .
持久化目录:
/var/lib/postgresql/data:容器内 PostgreSQL 数据/app/data:应用运行数据、日志和自动生成配置/app/uploads:上传附件常用环境变量:
APP_HOST / APP_PORT:服务监听地址和端口,默认 0.0.0.0:9939DATABASE_URL:PostgreSQL 元数据库连接串ENCRYPTION_KEY:数据库密码等敏感信息的 Fernet 加密密钥PUBLIC_SHARE_SECRET_KEY:公开分享链接签名密钥INITIAL_ADMIN_PASSWORD:初始管理员密码,默认 admin1234METRIC_INTERVAL:首次启动时的指标采集周期,默认 60 秒AI 模型配置优先在 Web 控制台的“AI 大模型管理”中维护。OPENAI_* 环境变量仅作为兜底兼容配置。
GET /health:基础健康检查常用命令:
bashpython -m venv .venv source .venv/bin/activate pip install -r requirements.txt cp .env.example .env python run.py
运行测试:
bashpython -m pytest python -m pytest -m unit python -m pytest -m service python -m pytest -m api python -m pytest --cov=backend --cov-report=term-missing
添加数据库诊断能力时,通常在 backend/skills/builtin/ 中新增技能 YAML,并为技能声明参数、权限和异步执行逻辑。更多项目约定可参考 AGENTS.md 和 CLAUDE.md。
ENCRYPTION_KEY 和 PUBLIC_SHARE_SECRET_KEY。/app/data、/app/uploads。DBClaw 采用轻量、易部署的架构:
核心目录:
textbackend/ FastAPI 后端、路由、服务、模型、技能系统 frontend/ 原生 JavaScript 前端页面、组件和静态资源 docs/ 产品、设计和实施文档 docker/ 单容器启动脚本与 supervisor 配置 tests/ pytest 测试用例 run.py 本地启动入口
欢迎提交 Issue、功能建议、文档改进和代码补丁。参与贡献前,请先阅读 CONTRIBUTING.md。
NineData DBClaw is released under the MIT License.
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务