Token导航 LogoToken导航

MCP Server · 运维云端

docktor (Hwclass)

Docktor是一款基于Docker的AI原生容器自动扩展工具,利用LLM和MCP协议监控和扩展Docker Compose服务,适用于动态负载管理和资源优化场景。

stdio官方级别未说明来源级核验工具 4
AI驱动GoClaude容器编排

快速开始

作者 / 组织
hwclass
提供方
hwclass
运行时
Docker

工具数量

4

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

7

仓库热度

收录来源

1 个

MCP World

选型结论

docktor (Hwclass) 属于运维云端类 MCP Server,公开资料标注 4 个工具,通过stdio 本地进程接入,适配 Claude,有可以直接复制的安装命令;接入前要先准备 API Key。

分类

运维云端

传输方式

stdio

认证方式

API Key

部署方式

公开资料未说明

安装与配置

安装命令

docker run --rm \

公开命令不是通用的启动方式,拼不出可靠配置示例;请在客户端 MCP 配置里按官方文档填写 command 和 args。

上手步骤

  1. 1

    准备运行环境

    stdio 服务在本地起进程,需要先装好 Docker,再按安装命令拉取依赖。

  2. 2

    安装服务

    复制下面的安装命令执行;命令里带占位符的位置换成自己的密钥或路径。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 4 个工具,随便调一个只读工具确认能返回结果。

接入前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

详细介绍

容器的AI原生自动缩放(基于Docker的AI堆栈构建)

使用LLM和MCP监控和扩展Docker Compose服务的自治SRE代理。

______________________________________________________________________

🚀 快速开始

先决条件:Docker桌面+模型运行器、cagent、Go 1.21+(参见 安装)

自主守护程序模式(推荐)

对于全自动24/7操作,无需用户干预:

# 1. Clone and build
git clone https://github.com/hwclass/docktor
cd docktor
go build -o docktor ./cmd/docktor

# 2. Start autonomous daemon (auto-scales automatically)
./docktor daemon start

# 3. Generate load to trigger scaling (in another terminal)
# Option A: Incremental load simulator (recommended for demos)
bash examples/single-service/load-incremental.sh

# Option B: Quick test - instant high load (90 seconds)
bash examples/single-service/load-quick.sh

# 4. Monitor daemon in real-time
./docktor daemon logs

# 5. Check status
./docktor daemon status

# 6. Stop daemon when done
./docktor daemon stop

高级选项:

# Custom compose file and service
./docktor daemon start --compose-file ./production.yaml --service api

# Manual mode (requires approval for each action)
./docktor daemon start --manual

互动模式(用于学习)

对于具有聊天界面的交互式探索,需要用户干预:

# 1. Run Docktor (opens cagent TUI)
./docktor ai up

# 2. In the TUI, send a message to start autoscaling:
# Type: "Start autoscaling web service now"

# 3. Generate load (in another terminal)
bash examples/load-cpu.sh

# 4. Watch containers scale
bash examples/watch.sh

模式比较:

  • Daemon(推荐):完全自主,在后台运行,无需用户输入
  • 交互式:手动聊天界面,有助于学习如何做出决策

📖 完整的测试指南:参见 AUTOSCALE_GUIDE.md

______________________________________________________________________

📦 Docker镜像(构建并推送到Docker Hub)

构建容器镜像(包括docker+compose CLI,以便Docktor可以扩展主机):

export IMAGE=scalingdocktor/docktor:latest
docker build -t "$IMAGE" .

推送到Docker Hub:

docker login
docker push "$IMAGE"

从镜像运行Docktor(挂载你的compose文件、配置和Docker套接字):

docker run --rm \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v $(pwd)/docktor.yaml:/app/docktor.yaml \
  -v $(pwd)/docker-compose.yaml:/app/docker-compose.yaml \
  "$IMAGE" daemon start --config /app/docktor.yaml

对于多拱(如果使用buildx):

docker buildx build --platform linux/amd64,linux/arm64 -t "$IMAGE" . --push

______________________________________________________________________

⚙️ 配置

Docktor使用 docktor.yaml 用于每个应用程序的缩放配置。这允许在不更改代码的情况下自定义阈值。

配置示例

# docktor.yaml
version: "1"

service: web
compose_file: docker-compose.yaml

scaling:
  cpu_high: 75.0        # Scale up when CPU >= 75%
  cpu_low: 20.0         # Scale down when CPU "
          value: 75.0
      scale_down_when:
        - metric: cpu.avg
          op: ""
          value: 500
        - metric: queue.rate_in
          op: ">"
          value: 200
      scale_down_when:
        # AND logic: scale only if ALL conditions match
        - metric: queue.backlog
          op: " 80%: scale up (+2)
                       If CPU  80%, scale up

Calling apply_scale(service: "web", target_replicas: 4, reason: "CPU high at 89.3%")
→ SUCCESS: scaled web from 2 to 4

示例3:健康范围→ Hold

Calling get_metrics(container_regex: "web", window_sec: 30)
→ {"examples-web-1": 45.2, "examples-web-2": 52.1}

Agent analyzes:
  - Current replicas: 2
  - Average CPU: 48.6%
  - Decision: 20%  80%: scale up (+2 replicas)
      - If avg CPU  Hold off on scaling for 10 minutes, running tests
    > Why did you scale to 4 replicas?
    > Be more aggressive with scaling today

第二阶段:Web界面

  • \[ \] 本地Web UI:在本地主机上运行的基于浏览器的聊天界面

- 实时聊天的React/Vue前端 - 实时指标仪表板,显示CPU、副本、决策 - 缩放事件的视觉时间线 - 自然语言命令的聊天面板 - 例子: http://localhost:3000 → Docktor控制面板

  • \[ \] 决策评审模式:缩放前的视觉审批工作流程

- 代理人建议:“从2开始→ 5 (CPU为87%)” - 用户点击:\[批准\]\[拒绝\]\[修改\] - 从模式中学习:记住批准/拒绝

第三阶段:情报

  • \[ \] 具有历史决策记忆的RAG:从过去的缩放决策中学习

- DuckDB+VSS插件:使用向量嵌入存储所有决策 - 查询类似的过去情况:“上次CPU达到85%时发生了什么?” - 模式识别:“周一早上总是需要6+个复制品” - 上下文感知决策:“上周负载相似,扩展到5运行良好” - 可解释的人工智能:“我之所以扩大规模,是因为3个类似的案例显示了性能问题” - 数据库架构:

    CREATE TABLE decisions (
      timestamp TIMESTAMP,
      metrics JSON,           -- CPU, memory, replicas at decision time
      action VARCHAR,         -- scale_up, scale_down, hold
      from_replicas INT,
      to_replicas INT,
      reason TEXT,
      outcome TEXT,           -- success, rolled_back, user_overridden
      embedding FLOAT[384]    -- Vector for similarity search
    );

- 聊天UI集成:“告诉我你为什么做出这个决定”→ 类似案例的矢量搜索

  • \[ \] 从反馈中学习:代理记住用户首选项

- 跟踪用户覆盖的决策 - 根据模式调整未来的行为 - “用户总是喜欢在周五进行保守的缩放”

  • \[ \] 自然语言政策:用简明英语定义规则

- “在工作时间(上午9点至下午5点),切勿将比例降至2以下” - “宁愿扩大规模,也不愿降低性能” - “无论负载如何,最多8个副本” - 自动存储和执行策略

集成与可观察性

  • \[ \] Docker桌面扩展:带有交互式控件的可视化仪表板
  • \[ \] 网页用户界面:基于浏览器的控制面板,具有实时聊天功能
  • \[ \] 普罗米修斯出口:监测系统的指标
  • \[ \] 警报集成:松弛/不协调通知和命令
  • \[ \] Webhook支持:触发外部事件的缩放

______________________________________________________________________

贡献

欢迎投稿!需要帮助的领域:

  1. 代理改进:帮助使cagent守护进程模式更加稳定
  2. 其他指标:内存、网络、自定义指标
  3. 更好的配方:更智能的缩放计算
  4. 文档:教程、示例、用例
  5. 测试:更多负载场景,边缘情况

______________________________________________________________________

许可证

MIT许可证-请参阅 许可证 文件

_免责声明:Docktor是一个由社区构建的独立开源项目。它不隶属于或认可Docker,股份有限公司。_

______________________________________________________________________

学分

内置:

______________________________________________________________________

Docktor -因为你的容器值得一位人工智能医生🩺🤖

工具与能力

工具数量

4

资源数量

0

提示词数量

0

能力标签

AI驱动Go本地部署容器编排自动扩展Docker生态系统负载均衡

支持客户端

Claude

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

看服务状态

查询容器、日志和监控指标,定位异常。

执行部署变更

在权限范围内触发发布、回滚和环境切换。

核对资源用量

汇总用量,找出闲置和超额的部分。

选择建议

值得选的地方

  • 只提供 4 个工具,职责集中,接入后不容易误操作。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 公开说明写得比较完整,接入前能看清能力边界。

先想清楚的地方

  • stdio 方式要求本地装好 Docker,换机器要重新装一遍。
  • 需要自备API Key,没有凭据没法直接试。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在运维云端场景里让模型直接调用外部能力的人。
  • 已经在用 Claude 的用户,接入路径最短。
  • 想先快速试一下、能接受在本地跑服务的人。

不太适合

  • 完全不想在本地装环境的人。
  • 暂时拿不到API Key的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
docktor (Hwclass)

MCP World · 本页

4stdio有1 个2026-05-17
Ui Tars Desktop 8a825770

MCP World

0stdio有1 个2026-05-17
Elie222 MCP

MCP World

0未说明未标注1 个2026-05-17
Arizeai Phoenix MCP

MCP World

0stdio有3 个2026-05-17
Unity MCP 87ee506e

MCP World

42HTTP有2 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

docktor (Hwclass) 怎么安装?

公开资料给出的安装命令是 docker run --rm \,运行环境为 Docker。装完后按客户端要求写进 MCP 配置,重启客户端生效。

docktor (Hwclass) 怎么在 Claude Desktop、Cursor 里配置?

它是stdio 本地进程,客户端配置里要写启动命令和参数,运行环境是 Docker;保存后完全退出客户端再打开,配置才会生效。

docktor (Hwclass) 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

docktor (Hwclass) 需要 API Key 吗?

公开资料标注的认证方式是API Key,也就是要先拿到凭据才能连上;凭据只填在自己本地的配置里,不要写进公开仓库。

docktor (Hwclass) 支持哪些客户端?

公开资料标注支持 Claude;其他客户端只要能配置 MCP Server,也能用同样的命令或地址接入。

来源信息

继续浏览同类 MCP