返回 MCP 目录
public公开dns本地运行

ckreiling_mcp-server-docker

一个通过自然语言管理Docker容器的MCP服务器,支持容器编排、运行监控和数据管理,适用于服务器管理员和本地开发测试。

article

README

🚀 🐋 Docker MCP 服务器

这是一个用于管理 Docker 的自然语言控制台进程 (MCP) 服务器,它能让你通过自然语言轻松编排容器、检查和调试运行中的容器,还能使用 Docker 卷管理持久数据,为服务器管理员和爱好者提供了极大的便利。

🚀 快速开始

先决条件

  • 确保已安装 uv(参见 文档 了解详情)
  • 克隆此仓库

安装

Claude Desktop

  • MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%/Claude/claude_desktop_config.json
开发/未发布的服务器配置
"mcpServers": {
  "mcp-server-docker": {
    "command": "uv",
    "args": [
      "--directory",
      "/path/to/repo",
      "run",
      "mcp-server-docker"
    ]
  }
}

✨ 主要特性

  • 🚀 使用自然语言编排容器
  • 🔍 检查和调试运行中的容器
  • 📀 使用 Docker 卷管理持久数据

❓ 适用人群

  • 服务器管理员:可连接到远程 Docker 引擎,例如管理公共面向的网站。
  • 爱好者:能在本地启动容器,而不必自己运行任何命令。

💻 使用示例

基础用法

🎻 docker_compose

使用自然语言编排容器。提供一个项目名称,以及对所需容器的描述,让大语言模型 (LLM) 负责其余的工作。此提示指示 LLM 进入一个 plan+apply 循环。与 LLM 的交互将涉及以下步骤:

  1. 你向 LLM 发送指令,说明要启动哪些容器
  2. LLM 计算出简洁的自然语言计划,并将其呈现给你
  3. 你可以:
    • 应用该计划
    • 向 LLM 提供反馈,LLM 重新计算计划

示例

  • 名称: nginx,容器: "部署一个暴露在端口 9000 的 nginx 容器"
  • 名称: wordpress,容器: "部署一个 WordPress 容器和一个支持的 MySQL 容器,并将 WordPress 暴露在端口 9000"

恢复项目

当你开始一个新的聊天时,LLM 将收到使用给定名称创建的任何容器、卷和网络的状态。这主要用于清理,如果你失去了负责许多容器的聊天。

📚 详细文档

资源

服务器为每个容器实现了一些资源:

  • 统计信息: CPU、内存等容器信息
  • 日志: 查看容器的日志尾部

工具

容器

  • list_containers
  • create_container
  • run_container
  • recreate_container
  • start_container
  • fetch_container_logs
  • stop_container
  • remove_container

镜像

  • list_images
  • pull_image
  • push_image
  • build_image
  • remove_image

网络

  • list_networks
  • create_network
  • delete_network
  • connect_container_to_network
  • disconnect_container_from_network

  • list_volumes
  • inspect_volume
  • remove_volume

📄 免责声明

本项目旨在为用户提供一个实验性的自然语言接口来与 Docker 交互。它可能不适用于生产环境,且功能可能会有变化。

📋 注意事项

⚠️ 重要提示

  • 使用前请备份重要数据
  • 确保你了解所有命令的潜在影响
  • 在公共网络上使用时要小心

💡 使用建议

按照快速开始部分的步骤进行安装和配置,使用 docker_compose 时清晰准确地描述所需容器,以便 LLM 更好地编排。

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端