UNPKG

@thelord/mcp-server-docker-npx

Version:

🐋 Docker MCP Server with NPX support - Manage Docker containers, images, networks, and volumes with natural language. Includes Docker socket access and remote Docker support via SSH/TCP.

117 lines (92 loc) 3.25 kB
# 🐳 Docker Socket Access Guide ## 🔌 Nuevas Herramientas Agregadas El servidor MCP Docker ahora incluye **3 herramientas adicionales** para manejo avanzado del socket Docker: ### 1. `docker_socket_info` - **Descripción**: Información sobre acceso y configuración del socket Docker - **Uso**: Detecta sockets disponibles, verifica accesibilidad - **Output**: Estado de sockets, rutas detectadas, plataforma ### 2. `docker_system_info` - **Descripción**: Información detallada del sistema Docker incluyendo detalles del socket - **Uso**: Diagnóstico completo del daemon Docker - **Output**: Info del sistema, versión del cliente, configuración actual ### 3. `run_container_with_socket` - **Descripción**: Ejecutar contenedor con montaje opcional del socket Docker - **Uso**: Docker-in-Docker, herramientas que necesitan controlar Docker - **Parámetros adicionales**: - `mount_docker_socket: bool` - Montar socket Docker - `docker_socket_path: str` - Ruta personalizada del socket ## 🔍 Detección Automática de Sockets ### Linux - `/var/run/docker.sock` (estándar) - `/run/docker.sock` - `/var/lib/docker.sock` ### macOS - `/var/run/docker.sock` - `~/.docker/run/docker.sock` - `~/Library/Containers/com.docker.docker/Data/docker.sock` (Docker Desktop) - `~/.colima/default/docker.sock` (Colima) - `~/.colima/docker.sock` ### Windows - `//./pipe/docker_engine` - `npipe:////./pipe/docker_engine` ## 📋 Ejemplos de Uso ### Verificar Socket Docker ```json { "tool": "docker_socket_info", "arguments": {} } ``` ### Docker-in-Docker con Socket ```json { "tool": "run_container_with_socket", "arguments": { "image": "docker:latest", "mount_docker_socket": true, "command": ["docker", "ps"] } } ``` ### Sistema Info Completo ```json { "tool": "docker_system_info", "arguments": {} } ``` ## 🛡️ Consideraciones de Seguridad ### ⚠️ Montaje del Socket Docker - Dar acceso al socket Docker permite **control completo** del daemon - Solo usar con contenedores **confiables** - Considerar usar Docker Desktop con restricciones ### 🔐 Permisos Requeridos - El usuario debe tener acceso de lectura/escritura al socket - En Linux: agregar usuario al grupo `docker` - En macOS: Docker Desktop maneja permisos automáticamente ## 🧪 Testing con Socket Remoto ```bash # Probar detección de socket en servidor remoto ssh root@10.10.10.202 'ls -la /var/run/docker.sock' # Usar MCP con socket remoto DOCKER_HOST=ssh://root@10.10.10.202 npx mcp-server-docker-npx ``` ## 📚 Variables de Entorno - `MCP_SERVER_AUTO_DETECT_SOCKET=false` - Deshabilitar detección automática - `MCP_SERVER_DOCKER_HOST` - Forzar host Docker específico - `DOCKER_HOST` - Host Docker estándar - `DOCKER_CONTEXT` - Contexto Docker a usar ## 🔧 Troubleshooting ### Socket no accesible ```bash sudo chmod 666 /var/run/docker.sock # O agregar usuario al grupo docker sudo usermod -aG docker $USER ``` ### Docker Desktop no detectado - Verificar que Docker Desktop esté ejecutándose - Comprobar configuración en Docker Desktop -> Settings -> Advanced ### Conexión remota falla - Verificar conectividad SSH - Comprobar que Docker daemon esté ejecutándose remotamente - Validar permisos de usuario remoto