🐳 Docker Mcp
Übersicht
Was ist Docker MCP?
Docker MCP (Model Context Protocol) ist ein Server, der entwickelt wurde, um das Management und die Orchestrierung von containerisierten Anwendungen zu erleichtern. Es bietet eine standardisierte Möglichkeit, Modellkontexte zu handhaben, sodass Entwickler ihre Anwendungen effizient mit Docker-Containern bereitstellen, verwalten und skalieren können. Docker MCP ist besonders nützlich für Teams, die ihre Entwicklungsprozesse optimieren und die Zusammenarbeit in verschiedenen Umgebungen verbessern möchten.
Funktionen von Docker MCP
- Containerverwaltung: Docker MCP vereinfacht die Verwaltung von Containern und ermöglicht es den Benutzern, Anwendungen einfach bereitzustellen, zu aktualisieren und zu skalieren.
- Standardisiertes Protokoll: Es nutzt ein standardisiertes Protokoll für Modellkontexte, das Kompatibilität und einfache Integration mit verschiedenen Tools und Diensten gewährleistet.
- Skalierbarkeit: Die Architektur von Docker MCP ermöglicht eine nahtlose Skalierung von Anwendungen, um erhöhte Lasten zu bewältigen, ohne die Leistung zu beeinträchtigen.
- Benutzerfreundliche Oberfläche: Docker MCP bietet eine intuitive Benutzeroberfläche, die es Entwicklern erleichtert, mit ihren containerisierten Anwendungen zu interagieren.
- Open Source: Als Open-Source-Projekt fördert Docker MCP die Beiträge und die Zusammenarbeit der Community, was Innovation und kontinuierliche Verbesserung begünstigt.
So verwenden Sie Docker MCP
- Installation: Beginnen Sie mit der Installation von Docker auf Ihrem Rechner. Befolgen Sie die offiziellen Docker-Dokumentationen für Installationsanweisungen.
- Repository klonen: Verwenden Sie Git, um das Docker MCP-Repository von GitHub zu klonen:
git clone https://github.com/QuantGeekDev/docker-mcp.git
- Konfiguration: Navigieren Sie zum geklonten Verzeichnis und konfigurieren Sie die erforderlichen Einstellungen in den Konfigurationsdateien gemäß Ihren Projektanforderungen.
- Server starten: Starten Sie den Docker MCP-Server mit Docker-Befehlen. Stellen Sie sicher, dass alle Abhängigkeiten erfüllt sind und die Umgebung ordnungsgemäß eingerichtet ist.
- Anwendungen bereitstellen: Verwenden Sie die Docker MCP-Oberfläche, um Ihre Anwendungen bereitzustellen, Container zu verwalten und die Leistung zu überwachen.
- Skalierung: Wenn Ihre Anwendung wächst, nutzen Sie die Skalierungsfunktionen von Docker MCP, um erhöhten Verkehr und Ressourcenanforderungen zu bewältigen.
Häufig gestellte Fragen
F1: Was sind die Systemanforderungen für Docker MCP?
A1: Docker MCP benötigt einen Rechner mit installiertem Docker. Es wird empfohlen, mindestens 4 GB RAM und einen Multi-Core-Prozessor für optimale Leistung zu haben.
F2: Ist Docker MCP für Produktionsumgebungen geeignet?
A2: Ja, Docker MCP ist robust und skalierbar gestaltet, was es für Produktionsumgebungen geeignet macht. Eine gründliche Testung wird jedoch vor der Bereitstellung empfohlen.
F3: Kann ich zu Docker MCP beitragen?
A3: Absolut! Docker MCP ist ein Open-Source-Projekt, und Beiträge sind willkommen. Sie können Probleme, Funktionsanfragen oder Pull-Requests im GitHub-Repository einreichen.
F4: Wie schneidet Docker MCP im Vergleich zu anderen Container-Orchestrierungstools ab?
A4: Docker MCP konzentriert sich auf das Management von Modellkontexten und bietet eine benutzerfreundliche Oberfläche, die es Entwicklern erleichtert, ihre Anwendungen im Vergleich zu einigen komplexeren Orchestrierungstools zu verwalten.
F5: Wo finde ich die Dokumentation für Docker MCP?
A5: Die Dokumentation für Docker MCP finden Sie in der README-Datei des Repositories und in zusätzlichen Ressourcen, die im Repository verlinkt sind.
Detail
🐳 docker-mcp
A powerful Model Context Protocol (MCP) server for Docker operations, enabling seamless container and compose stack management through Claude AI.
✨ Features
- 🚀 Container creation and instantiation
- 📦 Docker Compose stack deployment
- 🔍 Container logs retrieval
- 📊 Container listing and status monitoring
🎬 Demos
Deploying a Docker Compose Stack
https://github.com/user-attachments/assets/b5f6e40a-542b-4a39-ba12-7fdf803ee278
Analyzing Container Logs
https://github.com/user-attachments/assets/da386eea-2fab-4835-82ae-896de955d934
🚀 Quickstart
To try this in Claude Desktop app, add this to your claude config files:
{
"mcpServers": {
"docker-mcp": {
"command": "uvx",
"args": [
"docker-mcp"
]
}
}
}
Installing via Smithery
To install Docker MCP for Claude Desktop automatically via Smithery:
npx @smithery/cli install docker-mcp --client claude
Prerequisites
- UV (package manager)
- Python 3.12+
- Docker Desktop or Docker Engine
- Claude Desktop
Installation
Claude Desktop Configuration
Add the server configuration to your Claude Desktop config file:
MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json
Windows: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"docker-mcp": {
"command": "uv",
"args": [
"--directory",
"<path-to-docker-mcp>",
"run",
"docker-mcp"
]
}
}
}
</details>
<details>
<summary>🚀 Production Configuration</summary>
{
"mcpServers": {
"docker-mcp": {
"command": "uvx",
"args": [
"docker-mcp"
]
}
}
}
</details>
🛠️ Development
Local Setup
- Clone the repository:
git clone https://github.com/QuantGeekDev/docker-mcp.git
cd docker-mcp
- Create and activate a virtual environment:
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
- Install dependencies:
uv sync
🔍 Debugging
Launch the MCP Inspector for debugging:
npx @modelcontextprotocol/inspector uv --directory <path-to-docker-mcp> run docker-mcp
The Inspector will provide a URL to access the debugging interface.
📝 Available Tools
The server provides the following tools:
create-container
Creates a standalone Docker container
{
"image": "image-name",
"name": "container-name",
"ports": {"80": "80"},
"environment": {"ENV_VAR": "value"}
}
deploy-compose
Deploys a Docker Compose stack
{
"project_name": "example-stack",
"compose_yaml": "version: '3.8'\nservices:\n service1:\n image: image1:latest\n ports:\n - '8080:80'"
}
get-logs
Retrieves logs from a specific container
{
"container_name": "my-container"
}
list-containers
Lists all Docker containers
{}
🚧 Current Limitations
- No built-in environment variable support for containers
- No volume management
- No network management
- No container health checks
- No container restart policies
- No container resource limits
🤝 Contributing
- Fork the repository from docker-mcp
- Create your feature branch
- Commit your changes
- Push to the branch
- Open a Pull Request
📜 License
This project is licensed under the MIT License - see the LICENSE file for details.
✨ Authors
- Alex Andru - Initial work | Core contributor - @QuantGeekDev
- Ali Sadykov - Initial work | Core contributor - @md-archive
Made with ❤️
Serverkonfiguration
{
"mcpServers": {
"docker-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/metorial/mcp-container--quantgeekdev--docker-mcp--docker-mcp",
"docker-mcp"
],
"env": {}
}
}
}