Ctrl K
ComunidadGuías…
GITHUB · ANALIZADO

Distribox

Plataforma auto-alojada para crear, gestionar y compartir máquinas virtuales mediante interfaz web. Usa libvirt, Apache Guacamole para streaming gráfico y SSH nativo sin cliente adicional.

Ficha actualizada 26 sept 2026, 3:41 · upstream 26 sept 2026, 3:21 · release sin release detectada

Ver códigoProblemas y ayudaRepositorio ↗
00

Qué es Distribox

Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.

Distribox es una plataforma auto-alojada diseñada para la creación, gestión y compartición de máquinas virtuales a través de una interfaz web intuitiva y segura. Se basa en libvirt para la virtualización y utiliza Apache Guacamole para el streaming gráfico de escritorios de VMs directamente desde el navegador mediante WebSocket, eliminando la necesidad de software cliente. La arquitectura soporta nodos maestros y esclavos para distribución de carga, con métricas en tiempo real del clúster.

El sistema implementa un control de acceso basado en políticas similar a RBAC, permitiendo gestionar permisos granulares para acciones como creación de VMs, gestión de usuarios o conexión a máquinas virtuales. Soporta una amplia gama de sistemas operativos (Ubuntu, Debian, Fedora, CentOS, AlmaLinux, Alpine, Arch) y permite el uso de imágenes locales o desde un registro S3/MinIO con caché automático.

La plataforma incluye funcionalidades avanzadas como eventos distribuidos para asignar VMs a participantes por tiempo limitado, monitorización visual de todas las máquinas virtuales en ejecución, y soporte nativo para SSH con gestión de credenciales efímeras. El despliegue se realiza mediante Docker Compose, con opciones para nodos maestros o esclavos, y permite configurar almacenamiento externo para discos de VMs e imágenes.

CASOS DE USO
  • Creación y gestión centralizada de máquinas virtuales para entornos de desarrollo compartidos en equipos internos
  • Distribución controlada de entornos de pruebas a participantes mediante eventos con caducidad automática
  • Streaming gráfico seguro de VMs desde cualquier navegador sin instalar software adicional en el cliente
  • Despliegue distribuido de infraestructura virtualizada en múltiples nodos físicos para balanceo de carga
  • Compartición segura de máquinas virtuales específicas mediante credenciales efímeras y políticas de acceso granular
PUNTOS DESTACADOS
  • Arquitectura maestro/esclavo que permite escalar la infraestructura virtualizada a múltiples servidores físicos
  • Streaming gráfico mediante Apache Guacamole con WebSocket, eliminando dependencias de cliente en el navegador
  • Soporte nativo para SSH con gestión de credenciales efímeras y revocación automática por políticas o eventos
  • Sistema de control de acceso basado en políticas (RBAC) que oculta funcionalidades según permisos del usuario
  • Caché automático de imágenes OS desde registro S3/MinIO, reduciendo el tamaño inicial de instalación
PRECAUCIONES
  • Requiere libvirt y QEMU instalados en el sistema anfitrión para la virtualización de máquinas virtuales
  • El almacenamiento de VMs e imágenes se gestiona mediante bind mounts externos que requieren configuración manual del sistema de archivos
  • La autenticación inicial requiere credenciales administrativas (JWT o tokens) configuradas en variables de entorno
  • Las funcionalidades avanzadas como eventos distribuidos dependen de la disponibilidad continua del nodo maestro
VISUAL

Capturas del proyecto

Imágenes reales detectadas en la documentación del repositorio.

Distribox DemoEvents OverviewDistribox LogoVM CreationVM StreamingUsers and PoliciesSlave Registration TutorialConnected Slave Node
01

Perfil de infraestructura

Estimación inicial derivada del repositorio y de los servicios detectados.

CPU2 vCPUrecomendación inicial
MEMORIA2 GBRAM estimada
DISCO20 GBalmacenamiento base
COMPLEJIDADmediumnivel de operación
02

Despliegue detectado

Qué señales reales de instalación hemos encontrado.

Listo para automatizar

Configurar almacenamiento externo para /var/lib/distribox mediante bind mounts en partición separada para evitar agotar el disco raíz. Usar perfiles Docker Compose distintos para nodos maestros (master) y esclavos (slave). Asegurar que libvirt y Docker compartan el mismo directorio de datos para evitar inconsistencias. Configurar variables de entorno .env con claves secretas robustas antes del despliegue inicial.

✓Dockerfile
✓Compose
✓One-click
03

Stack y dependencias

Componentes inferidos a partir de manifests, configuración y documentación.

FRAMEWORKS
Next.jsReactNode.jsFastAPI
SERVICIOS
PostgreSQLS3/MinIO
BASES DE DATOS
PostgreSQL
PUERTOS
30008080
05

Puede sustituir a

Relaciones detectadas por el análisis del repositorio y su categoría.

06

Experiencia real de la comunidad

Ayuda a contrastar la estimación automática con instalaciones reales.

Todavía no hay datos comunitarios para este proyecto.