Dockge: Gestor de stacks Docker Compose con interfaz reactiva
Administra compose.yaml con editor interactivo, terminal web y soporte multi-agente desde una sola interfaz
Vídeo tutorial en YouTube
Mira el vídeo completo sobre cómo instalar y usar Dockge: Gestor de stacks Docker Compose con interfaz reactiva en el canal GENBYTE:
¿Qué es Dockge: Gestor de stacks Docker Compose con interfaz reactiva?
Dockge es un gestor autohospedado orientado a stacks Docker Compose que permite crear, editar, iniciar, detener, reiniciar y eliminar stacks desde una interfaz web reactiva. Desarrollado por Louis Lam, creador de Uptime Kuma, comparte su filosofía de experiencia de usuario cuidada y rendimiento en tiempo real. Los archivos compose.yaml permanecen en el sistema de archivos del host, accesibles también mediante comandos docker compose estándar. Incluye conversión de comandos docker run a compose.yaml, terminal web interactiva y, desde la versión 1.4.0, soporte para múltiples agentes Docker en una sola interfaz.
Características principales
Gestión completa de stacks
Crear, editar, iniciar, detener, reiniciar, eliminar stacks y actualizar imágenes Docker desde la interfaz.
Editor interactivo de compose.yaml
Editor web con resaltado de sintaxis y validación para escribir y modificar archivos compose.yaml directamente en el navegador.
Terminal web interactiva
Acceso a terminal en contenedores en tiempo real mediante WebSocket, útil para depuración y administración rápida.
Soporte multi-agente (v1.4.0+)
Gestiona stacks de múltiples hosts Docker desde una única instancia de Dockge conectando agentes remotos.
Conversión docker run a compose.yaml
Transforma comandos docker run en archivos compose.yaml válidos mediante la librería composerize integrada.
Estructura basada en archivos
Los stacks se guardan como archivos compose.yaml en el directorio configurado, compatibles con docker compose CLI.
Interfaz reactiva en tiempo real
Progreso de pull, up, down y salida de terminal se actualizan en vivo gracias a Socket.IO.
Interfaz cuidada y responsive
Diseño inspirado en Uptime Kuma, adaptable a móvil y escritorio, con modo oscuro y experiencia de usuario fluida.
Requisitos del sistema
- Docker 20+ o Podman
- Para Podman: paquete podman-docker (Debian: apt install podman-docker)
- Sistema operativo Linux: Ubuntu, Debian Bullseye o superior, Raspbian Bullseye o superior, CentOS, Fedora, ArchLinux
- No compatible con Debian/Raspbian Buster o inferiores
- Windows: no soportado oficialmente (previsto para futuro)
- Arquitecturas: armv7, arm64, amd64 (x86_64)
Instalación con Docker Compose
Instalación básica
Crea los directorios para stacks y datos de Dockge, descarga el compose.yaml oficial y levanta el contenedor.
mkdir -p /opt/stacks /opt/dockge
cd /opt/dockge
# Descargar compose.yaml
curl https://raw.githubusercontent.com/louislam/dockge/master/compose.yaml –output compose.yaml
# Iniciar Dockge
docker compose up -d
# Si usas docker-compose V1 o Podman
# docker-compose up -d
Instalación avanzada con directorio personalizado
Genera un compose.yaml con puerto y ruta de stacks personalizados usando el generador web o edita manualmente las variables de entorno y volúmenes.
curl "https://dockge.kuma.pet/compose.yaml?port=5001&stacksPath=/opt/stacks" –output compose.yaml
# Editar compose.yaml para añadir PUID/PGID si se requiere propiedad de archivos no root
# environment:
# – DOCKGE_STACKS_DIR=/opt/stacks
# – PUID=1000
# – PGID=1000
docker compose up -d
Acceder al proyecto
Acceso a la interfaz web
Dockge está disponible por defecto en http://localhost:5001 (o el puerto configurado). Al primer acceso se solicita crear usuario y contraseña de administrador.
Casos de uso
- Gestión visual de stacks Docker Compose en servidores caseros o VPS
- Administración de múltiples hosts Docker desde una sola interfaz mediante agentes
- Conversión rápida de comandos docker run a compose.yaml para versionar despliegues
- Depuración de contenedores con terminal web integrada sin acceso SSH
- Equipos que prefieren gestionar infraestructura como código (compose.yaml en disco) con UI amigable
- Alternativa ligera a Portainer cuando solo se requiere gestión de stacks Compose
Configuración avanzada
Configuración de propiedad de archivos (PUID/PGID)
Define PUID y PGID en el entorno del contenedor Dockge para que los archivos de stacks creados pertenezcan a un usuario no root.
– DOCKGE_STACKS_DIR=/opt/stacks
– PUID=1000
– PGID=1000
Uso de registros privados
Comparte el archivo de autenticación de Docker con Dockge para poder hacer pull de imágenes privadas.
– /root/.docker/:/root/.docker
Regla crítica de volúmenes para stacks
La ruta del host y la ruta en el contenedor para el directorio de stacks deben ser idénticas (p. ej. /opt/stacks:/opt/stacks). Rutas diferentes causan escritura en ubicaciones incorrectas.
– /opt/stacks:/opt/stacks # Correcto: ambas rutas coinciden
# – /docker:/my-stacks # Incorrecto: rutas distintas
Gestión y mantenimiento
Actualizar Dockge
Descarga la imagen más reciente y recrea el contenedor manteniendo la configuración y datos.
docker compose pull && docker compose up -d
Escanear stacks existentes
Si tienes stacks creados fuera de Dockge, muévelos al directorio de stacks y usa la opción "Escanear carpeta de stacks" en el menú superior derecho para importarlos.
# 2. Mover compose.yaml a /opt/stacks/<nombre-stack>/compose.yaml
# 3. En Dockge: menú desplegable superior derecho -> "Escanear carpeta de stacks"
Stack técnico
- TypeScript (ES Modules)
- Node.js >= 22.14.0
- Vue 3 + Vite
- Express.js (backend)
- Socket.IO (tiempo real)
- SQLite (knex, @louislam/sqlite3)
- xterm.js (terminal web)
- CodeMirror 6 (editor YAML)
- Bootstrap 5 + Bootstrap Vue Next
- Docker Compose V2 (motor de despliegue)
- composerize (conversión docker run -> compose)
Referencias oficiales
- Repositorio oficial GitHub: https://github.com/louislam/dockge
- Sitio web y generador de compose.yaml: https://dockge.kuma.pet
- Vídeo de demostración (YouTube): https://youtu.be/AWAlOQeNpgU?t=48
- Imagen Docker Hub: https://hub.docker.com/r/louislam/dockge/tags
- Guía de traducción: https://github.com/louislam/dockge/blob/master/frontend/src/lang/README.md
- Guía de contribución: https://github.com/louislam/dockge/blob/master/CONTRIBUTING.md
- Política de seguridad: https://github.com/louislam/dockge/blob/master/SECURITY.md
- Licencia MIT: https://github.com/louislam/dockge/blob/master/LICENSE
Apoya el canal GENBYTE
¿Te ha sido útil este contenido?
Suscríbete a YouTube
Newsletter GENBYTE
Ko-fi
Contacto: [email protected]
