🐋 Docker MCP server

🐋 Docker MCP server

site icon
2025.04.18 304
PythonDocker 管理自然语言处理开发效率
mcp-server-docker 是一个用于通过自然语言管理 Docker 的 MCP 服务器。它允许用户通过自然语言指令来组合容器、检查和调试运行中的容器,以及管理 Docker 卷等。适用于服务器管理员、技术爱好者和 AI 爱好者。
View on GitHub

Overview

基本能力

产品定位

mcp-server-docker 是一个通过自然语言管理 Docker 的 MCP 服务器,旨在简化 Docker 容器的管理和操作。

核心功能

  • 🚀 通过自然语言组合容器
  • 🔍 检查和调试运行中的容器
  • 📀 管理 Docker 卷的持久化数据

适用场景

  • 服务器管理员:连接到远程 Docker 引擎,管理面向公众的网站等。
  • 技术爱好者:在本地运行容器并实验支持 Docker 的开源应用。
  • AI 爱好者:探索 LLM 在 Docker 管理中的潜力。

工具列表

容器管理

  • 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: 创建网络
  • remove_network: 删除网络

卷管理

  • list_volumes: 列出卷
  • create_volume: 创建卷
  • remove_volume: 删除卷

常见问题解答

  • 敏感数据:不要在容器中配置敏感数据(如 API 密钥、数据库密码等),除非 LLM 在本地运行。
  • 容器安全:谨慎审查 LLM 创建的容器,避免使用敏感 Docker 选项(如 --privileged)。

使用教程

使用依赖

  • 安装 uv(如果尚未安装): bash # 参考链接:https://docs.astral.sh/uv/getting-started/installation/#installation-methods

安装教程

通过 PyPi 安装

  1. 在 MCP 服务器配置文件中添加以下内容: json "mcpServers": { "mcp-server-docker": { "command": "uvx", "args": ["mcp-server-docker"] } }

通过 Docker 安装

  1. 克隆仓库并构建 Docker 镜像: bash docker build -t mcp-server-docker .
  2. 在 MCP 服务器配置文件中添加以下内容: json "mcpServers": { "mcp-server-docker": { "command": "docker", "args": [ "run", "-i", "--rm", "-v", "/var/run/docker.sock:/var/run/docker.sock", "mcp-server-docker:latest" ] } }

调试方式

  • 使用 docker_compose 提示通过自然语言管理容器。
  • 检查容器状态和日志: bash docker ps docker logs <container_id>

许可证

该项目遵循 GPL-3.0 开源许可条款,请参阅 GPL-3.0 了解完整条款。