使用说明
项目简介
该项目实现了一个MCP服务器,旨在通过自然语言交互简化Docker管理。用户可以使用自然语言描述他们想要执行的Docker操作,例如创建容器、管理镜像、配置网络和卷等,而无需记忆和输入复杂的Docker命令。
主要功能点
- 自然语言Docker管理: 通过自然语言指令创建、启动、停止、删除Docker容器,以及管理镜像、网络和卷。
- 容器编排: 支持使用 "docker_compose" 提示词,像使用 Docker Compose 一样管理一组容器。
- 资源监控: 提供容器的实时日志和资源使用统计信息 (CPU, 内存等)。
- 丰富的Docker工具: 内置多种 Docker 工具,涵盖容器、镜像、网络和卷的常用操作(列表、创建、删除等)。
- Plan+Apply 交互模式: 采用类似 Terraform 的 Plan+Apply 模式,在执行操作前,LLM会先生成计划并展示给用户确认,确保操作的可控性。
安装步骤
- 安装 uv: 确保已安装 'uv'。 如果没有安装,请参考 https://docs.astral.sh/uv/getting-started/installation/ 进行安装。
- 克隆仓库: 使用 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 包的名称。
基本使用方法
- 启动 MCP 服务器: 配置完成后,MCP 客户端通常会自动启动配置的 MCP 服务器。
- 选择 Prompt: 在 MCP 客户端中,选择 "docker_compose" 提示词,该提示词由 "mcp-server-docker" 服务器提供。
- 自然语言交互: 使用自然语言描述您想要管理的 Docker 容器项目和具体需求。例如,您可以输入 "创建一个名为 'nginx-site' 的项目,部署一个 Nginx 容器,并将其端口 9000 映射到宿主机"。
- Plan+Apply 流程: 与 LLM 进行 Plan+Apply 交互,根据 LLM 生成的计划进行确认和执行,管理您的 Docker 环境。
信息
分类
开发者工具