使用说明

项目简介

该项目实现了一个MCP服务器,旨在通过自然语言交互简化Docker管理。用户可以使用自然语言描述他们想要执行的Docker操作,例如创建容器、管理镜像、配置网络和卷等,而无需记忆和输入复杂的Docker命令。

主要功能点

  • 自然语言Docker管理: 通过自然语言指令创建、启动、停止、删除Docker容器,以及管理镜像、网络和卷。
  • 容器编排: 支持使用 "docker_compose" 提示词,像使用 Docker Compose 一样管理一组容器。
  • 资源监控: 提供容器的实时日志和资源使用统计信息 (CPU, 内存等)。
  • 丰富的Docker工具: 内置多种 Docker 工具,涵盖容器、镜像、网络和卷的常用操作(列表、创建、删除等)。
  • Plan+Apply 交互模式: 采用类似 Terraform 的 Plan+Apply 模式,在执行操作前,LLM会先生成计划并展示给用户确认,确保操作的可控性。

安装步骤

  1. 安装 uv: 确保已安装 'uv'。 如果没有安装,请参考 https://docs.astral.sh/uv/getting-started/installation/ 进行安装。
  2. 克隆仓库: 使用 Git 克隆该仓库到本地:
    git clone https://github.com/MCP-Mirror/ckreiling_mcp-server-docker

服务器配置

要将此 MCP 服务器连接到 MCP 客户端(例如 Claude),您需要在客户端的配置文件中添加服务器配置信息。以下是一个配置示例,您需要将其添加到 MCP 客户端的配置文件中(例如 Claude Desktop 的 'claude_desktop_config.json'):

"mcpServers": {
  "mcp-server-docker": {
    "command": "uv",
    "args": [
      "--directory",
      "/path/to/ckreiling_mcp-server-docker", // 请替换为仓库的实际本地路径
      "run",
      "mcp-server-docker"
    ]
  }
}

配置参数说明:

  • '"mcp-server-docker"': 服务器名称,您可以自定义,用于在 MCP 客户端中标识该服务器。
  • '"command": "uv"': 启动服务器的命令,这里使用 'uv' 运行 Python 代码。
  • '"args"': 传递给 'uv' 命令的参数列表。
    • '"--directory"': 指定服务器代码所在的目录。
    • '"/path/to/ckreiling_mcp-server-docker"': 请务必替换为实际路径! 这是您在本地克隆 'ckreiling_mcp-server-docker' 仓库的绝对路径。
    • '"run"': 'uv run' 命令用于运行 Python 包。
    • '"mcp-server-docker"': 要运行的 Python 包的名称。

基本使用方法

  1. 启动 MCP 服务器: 配置完成后,MCP 客户端通常会自动启动配置的 MCP 服务器。
  2. 选择 Prompt: 在 MCP 客户端中,选择 "docker_compose" 提示词,该提示词由 "mcp-server-docker" 服务器提供。
  3. 自然语言交互: 使用自然语言描述您想要管理的 Docker 容器项目和具体需求。例如,您可以输入 "创建一个名为 'nginx-site' 的项目,部署一个 Nginx 容器,并将其端口 9000 映射到宿主机"。
  4. Plan+Apply 流程: 与 LLM 进行 Plan+Apply 交互,根据 LLM 生成的计划进行确认和执行,管理您的 Docker 环境。

信息

分类

开发者工具