wsl-labs GitHub

🧱 Requisitos — WSL Container Center#

Versión: v1 · Estado: 🟢 Activo Uso recomendado: Revisa este documento antes de instalar el proyecto o si quieres saber qué necesita tu equipo para operar el panel y los casos de contenedores.

<!-- -->

wsl-labs es local: todo corre en tu Windows + WSL 2 con wslc. No hay nube ni Kubernetes, así que los requisitos son los de tu propia máquina.

🗺️ Esquema#

graph TD
    C1["🪟 Windows 10 2004+ / 11"] --> C2["Virtualización · Hyper-V<br/>Plataforma de máquina virtual"]
    C2 --> C3["🐧 WSL 2.9+"]
    C3 --> C4["🐳 Motor de contenedores wslc<br/>(preview)"]
    C4 --> C5["Node.js 18+ · Go 1.21+ (launcher)"]
    C5 --> C6["🧭 Panel :9092"]

🖥️ Requisitos del host (Windows)#

RecursoMínimoRecomendadoNotas
🪟 Windows10 versión 2004 (build 19041)Windows 11WSL 2 requiere 2004+
🐧 WSL2.9+ con wslc2.9+ previewEl motor de contenedores llega con --pre-release
🟢 Node.js18 LTS20 LTS+En Windows, para el panel; sin deps npm
🚀 Go1.211.22+Solo para compilar el launcher
🌐 NavegadorCualquiera modernoEdge / ChromePara abrir :9092
🧠 RAM8 GB16 GB o másElasticsearch y Jenkins pesan bastante
🖴 Disco libre15 GB30 GB SSDIncluye imágenes base y capas de contenedores
⚙️ CPU2 hilos4 hilos o más
Virtualización activada en BIOS/UEFI (VT-x / AMD-V) y la característica de Windows "Plataforma de máquina virtual" son obligatorias para WSL 2.

🐳 Requisitos del motor wslc#

RecursoRequisitoNotas
Motorwslc presenteBinario en C:\Program Files\WSL\wslc.exe
Versión de WSL2.9+ (preview)Se obtiene con wsl --update --pre-release
Verificaciónwslc version respondeSi no, el panel muestra unavailable
Para obtener wslc, actualiza WSL a la rama preview: ``powershell wsl --update --pre-release wsl --shutdown ` y comprueba con & "C:\Program Files\WSL\wslc.exe" version`.

🔌 Puertos#

El proyecto publica los casos en localhost de Windows. Deben estar libres:

PuertoCaso
9092🧭 Panel
810101 API Node.js
810203 API Python (Flask)
810310 API Go
810406 Nginx web
810504 Cache Redis + app
810605 API + PostgreSQL
810702 LAMP (PHP + MariaDB)
810907 RabbitMQ
8110 / 811108 Prometheus + Grafana
811209 App multi-servicio (Mongo)
811311 Elasticsearch
811412 Jenkins CI
Si otro proceso de Windows ya usa uno de estos puertos, el caso quedará degraded o no arrancará. Verifica con netstat -ano | findstr <puerto> y libéralo. Ver Resolución de problemas.

📐 Tamaños y RAM medidos (reales)#

Datos medidos en esta plataforma: tamaño de imagen (wslc images) y memoria en reposo (wslc stats). El mínimo/recomendado añade margen para carga.

Sistema (global)#

RecursoMínimoRecomendadoCómodo
💾 Disco (imágenes)~7 GB*
🧠 RAM4 GB8 GB16 GB
🔧 CPU2 cores4 cores

\* Suma de tamaños reportados (~7.4 GB); las capas base compartidas (varios casos usan node:20-alpine, etc.) reducen el disco real. Rara vez se corren los 12 a la vez.

Por caso#

#Caso💾 Imagen(es)🧠 RAM reposo🧠 RAM mín.🧠 RAM recom.
01node-api136 MB9 MB128 MB256 MB
03python-api62 MB21 MB128 MB256 MB
10go-api15 MB2 MB64 MB128 MB
06nginx-web62 MB8 MB64 MB128 MB
04redis-cache175 MB13 MB256 MB512 MB
05postgres-api493 MB36 MB512 MB1 GB
02php-lamp808 MB76 MB512 MB1 GB
07rabbitmq252 MB148 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 (node/python/go/nginx) son ligerísimos (<25 MB de RAM en reposo). Los pesados son Elasticsearch (JVM) y Jenkins. El panel muestra estos mismos datos (💾 tamaño y 🧠 RAM) en cada tarjeta y en la franja de requisitos.

📊 Requisitos por escenario#

EscenarioRAM sugeridaComentario
Solo panel 90928 GBMuy liviano
Panel + un caso starter (node/python/go/nginx)8 GBApto para equipos medios
Panel + varios casos platform (redis/postgres/mongo)16 GBCómodo para practicar stacks
Casos infra pesados (11 Elasticsearch, 12 Jenkins)16 GB o másCada uno consume memoria de sobra

📌 Nota importante#

Los requisitos reales dependen del modo de uso. El proyecto recomienda levantar el panel primero y decidir después qué casos construir y levantar, uno a uno. Los casos infra (Elasticsearch, Jenkins) son los más exigentes en RAM y tiempo de arranque.


🔗 Documentos relacionados#

Fuente: docs/REQUIREMENTS.md