wsl-labs GitHub

🐳 wsl-labs — WSL Container Center#

Levanta y controla contenedores en Windows con wslc, el motor de contenedores nativo de WSL. Panel de control web + launcher, con casos reales portados de docker-labs — pero sin Docker Desktop.

Docs Dashboard Pages Build Windows Release Platform Engine License: Apache-2.0

Desde WSL 2.9, WSL trae WSLC (wslc): un motor de contenedores nativo, tipo Docker (imágenes, contenedores, redes, volúmenes). wsl-labs es un centro de control de contenedores sobre wslc — el equivalente WSL de un panel Docker.

🌐 Web del proyecto: https://vladimiracunadev-create.github.io/wsl-labs/ — toda la documentación en HTML, los 12 casos y la guía de instalación, sin clonar nada.


🗺️ Qué es este repo#

PiezaRol
🧭 Panel (Node.js, :9092)Construye, levanta, detiene y supervisa contenedores
🪟 Launcher Windows (Go .exe)Arranca el panel y abre el navegador
🐳 12 casos (containers/NN-*)Stacks reales portados de docker-labs, con imágenes propias
📇 containers.config.jsonFuente única de verdad (imágenes, puertos, redes, comandos)

Arquitectura#

flowchart LR
    subgraph WIN["🪟 Windows 11"]
        L["Launcher .exe"]
        B["Navegador"]
        D["🧭 Panel<br/>Node.js :9092"]
    end
    subgraph WSLC["🐳 Motor de contenedores (wslc)"]
        C1["contenedor · app"]
        C2["contenedor · base de datos"]
        N(["red wslc"])
        C1 --- N --- C2
    end
    L --> D
    B --> D
    D -->|wslc.exe| WSLC

🚀 Quickstart#

# 1. WSL 2 + habilitar wslc (canal preview, trae el motor de contenedores)
wsl --install
wsl --update --pre-release

# 2. Clonar el repo
git clone https://github.com/vladimiracunadev-create/wsl-labs.git
cd wsl-labs

# 3. Levantar el panel
make serve            # o: node dashboard-server/server.js

Abre http://localhost:9092. Por cada caso: 📦 Construir → ▶ Levantar → 🌐 Abrir.

¿Prefieres un .exe? Descarga el Launcher desde Releases.

🐳 Casos de contenedores#

Portados de docker-labs, ejecutados con wslc. Los platform son multi-contenedor (app + base de datos por una red).

#CasoCategoríaStackPuerto
01node-apistarterNode.js8101
02php-lampplatformPHP + MariaDB8107
03python-apistarterFlask8102
04redis-cacheplatformNode + Redis8105
05postgres-apiplatformPython + PostgreSQL8106
06nginx-webstarterNginx8104
07rabbitmqinfraRabbitMQ8109
08prometheus-grafanainfraPrometheus + Grafana8110
09multi-serviceplatformNode + MongoDB8112
10go-apistarterGo8103
11elasticsearchinfraElasticsearch 88113
12jenkinsinfraJenkins LTS8114

📖 Documentación#

Empieza por el 📗 índice maestro.

WSL como contexto: WSL es la plataforma que hace posible wslc. Su historia, fundamentos y comandos se conservan como documentación (no como el foco operativo del repo). Ver docs/wsl-historia-y-referencia.md.

🧱 Requisitos#

Sistema (medido): 💾 ~7 GB de imágenes (capas compartidas reducen el disco real) · 🧠 RAM 4 GB mín / 8 GB recom / 16 GB cómodo · 🔧 2–4 cores.

📐 Tamaño y RAM por caso (medido con wslc images / wslc stats)#

#Caso💾 Imagen🧠 RAM reposo🧠 mín.🧠 recom.
10go-api15 MB2 MB64 MB128 MB
06nginx-web62 MB8 MB64 MB128 MB
03python-api62 MB21 MB128 MB256 MB
01node-api136 MB9 MB128 MB256 MB
04redis-cache175 MB13 MB256 MB512 MB
07rabbitmq252 MB148 MB512 MB1 GB
05postgres-api493 MB36 MB512 MB1 GB
02php-lamp808 MB76 MB512 MB1 GB
09multi-service1012 MB83 MB512 MB1 GB
08prometheus-grafana1406 MB177 MB768 MB1.5 GB
12jenkins490 MB702 MB1 GB2 GB
11elasticsearch1410 MB910 MB2 GB3 GB
Los starter son ligerísimos (<25 MB de RAM en reposo); los pesados son Elasticsearch y Jenkins. El panel muestra estos mismos datos en cada tarjeta. Detalle completo en docs/REQUIREMENTS.md.

⚖️ Licencia#

Apache License 2.0 · Copyright 2026 vladimiracunadev-create

Fuente: README.md