s

suvarchal

virtualizationdeveloper-toolscommand-line

321 查看 · 2026-07-07 更新

Docker MCP 服务器

一个用于 Docker 操作的模型上下文协议 (MCP) 服务器。此服务器允许 Claude 和其他 AI 助手通过 MCP 协议与 Docker 进行交互。

注意: 此 MCP 服务器支持标准的 Docker CLI 命令,但目前不支持 Docker Compose 操作,其他使用 docker-compose 的 MCP 服务器在 cline 中尚未可靠工作。

特性

  • 列出 Docker 容器
  • 列出 Docker 镜像
  • 运行 Docker 容器
  • 停止正在运行的容器
  • 删除容器
  • 从注册表拉取 Docker 镜像

安装

先决条件

  • Node.js 18 或更高版本
  • 在您的系统上安装并运行 Docker

从 npm 安装

bash npm install -g docker-mcp-server

从源代码安装

  1. 克隆此仓库
  2. 安装依赖项:

bash cd docker-mcp npm install

  1. 构建项目:

bash npm run build

使用

运行服务器

bash docker-mcp-server

或者如果从源代码安装:

bash npm start

与 Claude 配置

您可以使用包含的安装脚本来自动配置 Docker MCP 服务器与 Claude:

bash npm run install-config

该脚本将:

  1. 检测您的 Claude 安装(桌面版和/或 VSCode)
  2. 更新配置文件以包含 Docker MCP 服务器
  3. 为您的系统设置正确的路径

手动配置

如果您更喜欢手动配置,则需要将 Docker MCP 服务器添加到您的 MCP 设置配置文件中:

对于 Claude 桌面应用程序(macOS)

编辑 ~/Library/Application Support/Claude/claude_desktop_config.json

json { "mcpServers": { "docker-mcp": { "command": "node", "args": ["/path/to/docker-mcp/dist/index.js"], "disabled": false, "autoApprove": [] } } }

对于 VSCode 中的 Claude

编辑 ~/.config/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json

json { "mcpServers": { "docker-mcp": { "command": "node", "args": ["/path/to/docker-mcp/dist/index.js"], "disabled": false, "autoApprove": [] } } }

注意: 在 VS Code 中配置 Docker MCP 服务器后,您可能需要重启 VS Code 以便 Cline 生效。如果遇到 Docker MCP 服务器未被识别或无法正常工作的问题,请尝试重启 VS Code。

可用工具

list_containers

列出所有 Docker 容器。

参数:

  • all (布尔值, 可选): 显示所有容器(默认仅显示正在运行的)

list_images

列出所有 Docker 镜像。

run_container

运行一个 Docker 容器。

参数:

  • image (字符串, 必需): 要运行的 Docker 镜像
  • name (字符串, 可选): 容器名称
  • detach (布尔值, 可选): 在后台运行容器
  • ports (字符串数组, 可选): 端口映射 (例如 ["8080:80"])
  • volumes (字符串数组, 可选): 卷映射 (例如 ["/host/path:/container/path"])
  • env (字符串数组, 可选): 环境变量 (例如 ["KEY=value"])
  • command (字符串, 可选): 在容器中运行的命令

stop_container

停止一个正在运行的 Docker 容器。

参数:

  • container (字符串, 必需): 容器 ID 或名称

remove_container

删除一个 Docker 容器。

参数:

  • container (字符串, 必需): 容器 ID 或名称
  • force (布尔值, 可选): 强制删除正在运行的容器

pull_image

从注册表拉取一个 Docker 镜像。

参数:

  • image (字符串, 必需): 镜像名称 (例如 "nginx:latest")

与 Claude 的示例用法

配置完成后,您可以要求 Claude 执行 Docker 操作:

  • "运行一个 hello-world Docker 容器"
  • "列出所有 Docker 容器"
  • "拉取最新的 nginx 镜像"
  • "在端口 8080 上运行一个 nginx 容器"
  • "停止 nginx 容器"
  • "删除所有已停止的容器"

MCP 市场此Docker MCP服务器可在Cline MCP市场中找到,用户可以轻松地一键发现和安装。

MCP市场提交的徽标位于assets/logo.png文件中。

有关MCP市场的更多信息,请访问:

许可证

MIT

服务配置

[{'mcpServers': {'docker-mcp': {'args': ['/path/to/docker-mcp/dist/index.js'], 'autoApprove': [], 'command': 'node', 'disabled': False}}}, {'mcpServers': {'docker-mcp': {'args': ['/path/to/docker-mcp/dist/index.js'], 'autoApprove': [], 'command': 'node', 'disabled': False}}}]

来源