Buenos días/tardes y feliz año!

Hace algún tiempo que no venimos por aqui, y aunque seguimos activos en otros canales, hace tiempo que no dejamos ningún articulo por el blog.

Hoy venimos a hablaros de nuestro «viejo/nuevo» amigo WSL2 y vamos viendo como poco a poco va cobrando importancia en el ecosistema de Microsoft y el resto de aplicaciones de terceros.

Ya os hablamos anteriormente que la funcionalidad de Docker for Desktop 3.0 en su versión para Windows ofrece compatibilidad total con WSL2.

¿Quieres utilizar esta funcionalidad? Pues puedes revisar uno de nuestros articulos más leídos del año pasado:

Ejecutar WSL2 en Windows Server 2019 y Windows 10 – itcloud – @itcloud_es

Por actualizar un poco de cara a la obsolescencia en las funcionalidades como WSL2, podemos encontrarnos que aunque sigamos el articulo nos indica que no contamos con el Kernel Linux para poder utilizar la version de WSL2. Para poder completar la funcionalidad, debemos descargar:

https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi

Si queréis comprobar la página oficinal de instalación de WSL2, os dejo la URL:

Instalar el Subsistema de Windows para Linux (WSL) en Windows 10 | Microsoft Docs

Por otro lado cada vez están más claras las mejoras y sorpresas que incorpora WSL2 frente a WSL, os dejo una comparativa:

Como era de esperar WSL2 supera a WSL en todas sus funcionalidades, frente a una única ventaja de WSL frente a su superior, y es el rendimiento en sistemas de archivos.

De hecho una buena práctica recomenda con WSL2, es no trabajar en el path real de la ruta de ficheros del sistema ( Ejemplo c:\System32 ) sino utilizar la ruta montada de /mnt/c/Users/…

Hemos estado realizando bastante pruebas en este entorno de WSL2 con docker y destacar que nos hemos encontrado de forma repetida con un eror de consumo de memoria con el proceso vmmem:

En este caso veis que esta consumiendo 3,5 Gb de mi memoria RAM, en otros casos hubiera estado consumiendo un 97% de la memoria total.

Si ves que te ocurre lo mismo, la forma de solucionarlo es crear en tu home un fichero: .wslconfig

Y añadir lo siguiente:

[wsl2]
memory=4GB # Limits VM memory in WSL 2 to 4 GB
processors=5 # Makes the WSL 2 VM use two virtual processors

Después reiniciamos el servicio de WSL: Restart-Service LxssManager

Más información sobre este error aquí

Espero con esto haberos animado a probar un poquito de docker con WSL2