Docker MCP服务器

一个提供高级Docker操作并通过统一接口集成的MCP服务器,为开发人员、DevOps工程师和系统管理员提供完整的Docker工作流解决方案。

  • by 0xshariq
  • JavaScript
  • 本地部署
  • 15 星标
  • 更新于
在 GitHub 查看 0xshariq/docker-mcp-server

使用说明

Docker MCP服务器

一个全面的模型上下文协议(MCP)服务器,通过统一的接口提供高级Docker操作。该服务器结合了16个强大的Docker MCP工具和25个以上方便的CLI别名,为开发人员、DevOps工程师和系统管理员创建了一个完整的Docker工作流解决方案。

🌟 Docker MCP服务器的独特之处

Docker MCP Server不仅仅是另一个Docker包装器,它是一个完整的Docker工作流增强系统,旨在使Docker操作更加直观、安全和高效:

🎯 统一接口

  • MCP协议集成:与MCP兼容的工具和IDE无缝协作
  • CLI便利性:为常见Docker工作流精心设计的25个别名
  • 一致的API:所有操作都遵循相同的模式和惯例
  • 交叉平台的:完全支持Linux、macOS和Windows环境

🔒 安全第一设计

  • Docker管理安全:Docker守护进程处理的所有密码操作,以实现最高安全性
  • 零密码暴露:密码从不出现在命令历史记录、进程列表或参数中
  • 令牌身份验证支持:完全支持个人访问令牌和服务帐户
  • 注册表灵活性:安全登录到Docker Hub、AWS ECR、Azure ACR、Google GCR和自定义注册表
  • CI/CD安全:自动部署管道的安全stdin密码输入
  • 权限管理:正确处理Docker守护进程权限和凭据存储

🚀 开发者体验

  • 综合帮助系统:每个命令都包括详细的文档 --help
  • 智能默认值:常见用例的合理默认配置
  • 错误预防:针对破坏性操作的内置安全检查和确认提示
  • 丰富的输出:格式化的彩色输出,带有清晰的状态指示器

📊 高级操作

  • 完整的容器生命周期:从构建到发布,提供全面的注册表支持
  • 多集装箱管理:Docker Compose与服务编排集成
  • 注册表发布:具有多平台支持和自动化工作流程的高级图像发布
  • 网络和卷管理:先进的网络和存储操作
  • 系统维护:具有多种安全级别的智能清理工具
  • 开发工作流程:开发环境专用命令

📦 安装

MCP客户端的快速设置

将此配置添加到MCP客户端设置中:

{
  "mcpServers": {
    "docker-mcp-server": {
      "command": "npx",
      "args": ["-y", "@0xshariq/docker-mcp-server@latest"]
    }
  }
}

在何处添加此内容:

  • 克劳德桌面: claude_desktop_config.json
  • VS代码库: .vscode/mcp.json
  • 其他MCP客户端:检查客户的配置文档

安装简单(推荐)

全局安装Docker MCP服务器,以便在系统上的任何地方使用它:

# Install with npm
npm install -g @0xshariq/docker-mcp-server

# Or install with pnpm (faster)
pnpm add -g @0xshariq/docker-mcp-server

# Verify installation works
docker-mcp-server --version
dlist                        # List all available commands

就是这样!所有25个CLI别名现在都可以在系统范围内使用。

对于开发者

如果您想贡献或自定义服务器:

# Clone and setup
git clone https://github.com/0xshariq/docker-mcp-server.git
cd docker-mcp-server
npm install
npm run build

# Test locally
npm link                     # Makes commands available globally
dlist                       # Verify it works

你首先需要什么

安装前,请确保:

检查你是否有:

node --version              # Should show v18 or higher
docker --version           # Should show Docker version

🚀 快速开始

试试看

安装后,尝试以下命令查看Docker MCP Server的运行情况:

# See all available commands
dlist

# Basic Docker operations
dps                         # List running containers
dimages                     # List Docker images
drun -it ubuntu bash        # Run interactive Ubuntu container

# Advanced operations
dcompose up -d              # Start Docker Compose services
dlogin                      # Login to Docker registries
dpublish myapp:v1.0         # Publish image to registry

📚 文档

了解更多:

🎯 所得

基本命令(8个别名)

简单的日常Docker操作:

  • 容器管理:列出、运行、停止和检查容器
  • 图像操作:拉取、构建和管理Docker镜像
  • 日志和调试:查看日志并在容器内执行命令

高级命令(14个别名)

用于复杂Docker工作流的强大工具:

  • 多容器应用程序:完全的Docker Compose集成
  • 注册表操作:安全登录和图像发布到Docker Hub、GitHub、AWS等。
  • 网络与存储:高级网络和卷管理
  • 系统维护:智能清理和环境管理
  • 开发工具:开发环境的专用工作流程

🔧 MCP服务器设置

适用于克劳德桌面

  1. 查找您的Claude配置文件:

    • Linux: ~/.config/claude-desktop/claude_desktop_config.json
    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • 视窗: %APPDATA%\Claude\claude_desktop_config.json
  2. 将此添加到您的配置中:

    {
      "mcpServers": {
        "docker": {
          "command": "node",
          "args": ["/path/to/docker-mcp-server/dist/index.js"]
        }
      }
    }
    
  3. 重新启动克劳德桌面 你会看到Docker工具可用!

通用启动脚本

使用我们的启动脚本对任何MCP客户端进行自动设置:

./start-mcp.sh              # Automatic environment setup
./start-mcp.sh --help       # See all options

兼容: Claude桌面、游标IDE、继续(VS代码)、打开WebUI等等!

🏗️ 项目结构

docker-mcp-server/
├── src/                    # TypeScript source code
├── bin/                    # CLI alias scripts
│   ├── basic/             # 8 basic Docker operations
│   └── advanced/          # 14 advanced Docker operations
├── help/                  # Documentation for all commands
├── start-mcp.sh          # Universal MCP server startup script
├── docker-cli.js         # Main CLI wrapper
└── dist/                 # Compiled JavaScript output

📚 完整文件:

⚡ 所有可用命令

基本操作(8个命令)

日常使用的基本Docker操作:

  • dimages, dps, dpsa, dpull, drun, dlogs, dexec, dbuild

高级操作(14个命令)

用于复杂工作流程的强大工具:

  • dcompose, dup, ddown, dnetwork, dvolume, dinspect, dprune
  • dlogin, dlogout, dpublish, dbridge, ddev, dclean, dstop, dreset

实用程序命令(3个命令)

  • docker-mcp-server, dms, dlist

📖 请参阅详细文档: 使用 dlist 命令或检查上面链接的README文件。

🔧 发展

对于贡献者

# Setup development environment
git clone https://github.com/0xshariq/docker-mcp-server.git
cd docker-mcp-server
npm install

# Development commands
npm run dev                 # Build and watch for changes
npm run build              # Build TypeScript
npm run start              # Start MCP server
npm run clean              # Clean build files

🧪 测试

快速测试

# After installation, test these commands
dlist                      # Should show all 25 commands
dps                        # Should list containers
dimages                    # Should list images

测试MCP集成

./start-mcp.sh             # Should start without errors

🆘 常见问题

“找不到命令”

# Make sure npm global bin is in your PATH
echo $PATH | grep $(npm config get prefix)

# If not found, add this to ~/.bashrc or ~/.zshrc:
export PATH="$(npm config get prefix)/bin:$PATH"

“Docker守护进程未运行”

# Check Docker status
docker info

# Start Docker (Linux)
sudo systemctl start docker

# Start Docker Desktop (macOS/Windows)
# Launch the Docker Desktop app

“权限被拒绝”

# Add yourself to docker group (Linux)
sudo usermod -aG docker $USER
# Then logout and login again

📋 更多帮助:


📄 许可证

ISC许可证

👨‍💻 作者

Sharique Chaudhary (@0x分享)

🤝 贡献

欢迎投稿!拜托:

  1. 分叉存储库
  2. 创建要素分支
  3. 测试您的更改
  4. 提交拉取请求

🔗 链接


✨ Docker MCP服务器 -让Docker工作流对每个人来说都简单而强大!