使用说明

项目简介

Docker MCP Server 是一个基于 Model Context Protocol (MCP) 构建的服务器端应用,旨在为 LLM 客户端提供与 Docker Desktop 交互的能力。通过该服务器,LLM 可以调用预定义的工具来管理 Docker 容器,实现容器的生命周期控制和信息查询等自动化操作。

主要功能点

  • 容器生命周期管理
    • 列出容器 (list_containers):获取当前 Docker 环境中所有容器的列表。
    • 获取容器信息 (get_container_info):查询指定容器的详细信息。
    • 启动容器 (start_container):启动指定的容器。
    • 停止容器 (stop_container):停止指定的容器。
    • 删除容器 (remove_container):删除指定的容器。

安装步骤

  1. 安装 Docker Desktop for Windows:请确保已安装 Docker Desktop 并正确配置,允许通过 TCP 端口 '2375' 访问 Docker Daemon (设置路径:'Settings > General > Expose daemon on tcp://localhost:2375 without TLS')。
  2. 使用 Docker 运行 MCP Server 镜像:无需手动安装,直接使用 Docker 命令运行预构建的镜像 'freezeolo/docker-mcp-server' 即可。

服务器配置

MCP 客户端需要配置以下 JSON 信息以连接到 Docker MCP Server。以下配置适用于 Claude Desktop 等 MCP 客户端:

{
  "mcpServers": {
    "docker-mcp-stdio": {  // 服务器名称,客户端内唯一标识即可
      "command": "docker",  // 运行服务器的命令
      "args": [           // 命令参数
        "run",
        "-i",             // 保持STDIN打开,分配TTY
        "--rm",           // 容器退出时自动删除
        "freezeolo/docker-mcp-server" // Docker 镜像名称
      ]
    }
  }
}

配置说明

  • 'server name': 'docker-mcp-stdio' (可自定义) - MCP 服务器的名称,在客户端配置中用于唯一标识该服务器。
  • 'command': 'docker' - 运行 Docker 镜像的命令,确保客户端环境中已安装 Docker CLI。
  • 'args': 运行 'docker run' 命令的参数,包括:
    • '-i', '--rm': Docker 运行参数,保持容器交互性并在退出后自动清理。
    • 'freezeolo/docker-mcp-server': Docker Hub 上预构建的 Docker MCP Server 镜像名称。

基本使用方法

配置完成后,在支持 MCP 协议的 LLM 客户端(如 Claude Desktop)中,即可通过自然语言指令调用 Docker 容器管理工具。例如,你可以指示 LLM 列出当前运行的容器,或者启动、停止某个指定的容器,从而实现基于 LLM 的 Docker 容器自动化管理。

信息

分类

开发者工具