- Implementació de contenidors nadius mitjançant wslc.exe per reduir la sobrecàrrega del sistema.
- Optimització del rendiment utilitzant el backend de WSL 2 davant de versions anteriors.
- Integració fluida amb Visual Studio Code i Dev Containers per agilitzar el flux de treball.
- Anàlisi de requisits de llicència i versions de Windows necessàries per a cada mètode.
Si ets desenvolupador i treballes a Windows, segurament t'has topat amb l'etern dilema de voler la potència de Linux sense haver de formatar el PC o barallar-te amb màquines virtuals que es mengen tota la teva RAM. Afortunadament, l'ecosistema ha evolucionat una barbaritat i ara tenim opcions que fan que desplegar contenidors Docker a WSL sigui un passeig, permetent tenir el millor dels dos mons en una sola màquina.
La cosa ha canviat molt darrerament, passant de configuracions molestes a solucions gairebé natives. Ja sigui que busques una eina professional amb interfície gràfica o prefereixis la lleugeresa d'una CLI integrada directament al sistema, hi ha rutes clares per muntar el teu entorn de desenvolupament sense que el teu ordinador demani clemència per la manca de memòria.
El nou paradigma: Contenidors nadius amb wslc.exe

Microsoft ha donat un cop sobre la taula llançant una funcionalitat en vista prèvia pública que permet executar contenidors de Linux de manera nativa. L'estrella aquí és wslc.exe, una interfície de línia d'ordres que imita les ordres de Docker que ja coneixem, però sense la necessitat d'instal·lar Docker Desktop. El més curiós és que no utilitza una distribució de WSL estàndard, sinó que aixeca micro-VMs de Hyper-V lleugeres per a cada contenidor, cosa que aïlla molt millor els processos i millora la seguretat.
Per començar a donar canya a aquesta eina, necessites tenir Windows 11 (preferiblement la compilació 26100 o superior) i actualitzar WSL a la versió preliminar mitjançant la comanda wsl --update --pre-release. Un cop fet això, només cal executar wsl --install-feature containers per tenir tot llest. Per comprovar que no hi ha errors, pots llançar un contenidor ràpid amb wslc run --rm hello-world i, si veus el missatge de salutació, és que el teu entorn està operatiu.
Mans a l'obra: Creant la teva pròpia imatge
Quan vulguis passar dels exemples bàsics a alguna cosa real, l'ideal és fer servir VS Code amb la seva extensió de WSL. Imagina't que tens un projecte de Django; només cal crear un fitxer anomenat Containerfile a l'arrel on definiu la imatge base (com Python 3), copieu els requisits i instal·leu les dependències. Després, utilitzes l'ordre wslc build -t nombre-de-tu-app . per generar la imatge personalitzada.
Per posar-la en marxa, l'ordre clau és wslc run -d -p 8000:8000 nombre-de-tu-app, el que permet que Windows accedeixi al port del contenidor. Si vols veure què està passant a dins, pots fer servir wslc container logs o executar ordres internes amb wslc exec. Si notes que el disc s'està omplint, no oblidis fer servir wslc container prune per esborrar el que ja no facis servir.
L'alternativa clàssica: Docker Desktop i WSL 2

Encara que el que és nadiu sona genial, Docker Desktop segueix sent l'estàndard per la seva maduresa i la seva interfície visual. La clau aquí és fer servir el backend de WSL 2, que és infinitament més ràpid que la versió 1 gràcies al fet que inclou un nucli de Linux real i un sistema d'arxius ext4 nadiu. Això suposa una millora brutal a la velocitat d'entrada i sortida de fitxers, fent que operacions com npm install o git clone volin.
Si veniu d'una instal·lació antiga, el més sa és fer una neteja a fons. Esborrar carpetes residuals a AppData i eliminar qualsevol rastre de DOCKER_HOST a l'arxiu .bashrc és fonamental per evitar el típic error de connexió amb el dimoni de Docker. Un cop net, instal·les la versió més recent de Docker Desktop i t'assegures que a la configuració estigui marcada l'opció de integració amb el teu distro de WSL.
Configuració manual per a usuaris avançats
Hi ha qui prefereix no fer servir Docker Desktop per temes de llicències corporatives o consum de recursos. En aquest cas, es pot instal·lar el motor de Docker directament a Ubuntu dins de WSL. Això implica crear un usuari no root per evitar riscos de seguretat, atorgar-lo privilegis de sudo i executar la instal·lació de docker.io y docker-compose via terminal. És un camí més manual, però et dóna un control total sobre el dimoni i els recursos del sistema.
Comparativa i elecció de camí

Escollir entre wslc i Docker Desktop depèn bàsicament del teu perfil. Si treballes en una empresa gran i vols evitar costos de llicències, o si només necessites contenidors per a desenvolupament ràpid a VS Code, wslc és l'opció guanyadora. A més, la integració amb Dev Containers de VS Code és senzilla: només cal canviar la ruta del Docker Path per wslc als paràmetres del JSON.
D'altra banda, si depens d'orquestradors com Kubernetes o Rancher Desktop , Docker Desktop continua sent imprescindible, ja que la solució nativa de WSL encara no cobreix aquesta capa d'orquestració. Així mateix, recorda que per utilitzar les funcions d'aïllament de Hyper-V necessàries per a wslc, Windows 11 Pro o Enterprise és un requisit obligatori, ja que la versió Home no suporta aquestes característiques.
Tenir un entorn de contenidors ben configurat a Windows transforma l'experiència de desenvolupament, i ens permet saltar entre eines d'anàlisi de dades, servidors web i bases de dades sense embrutar el sistema operatiu principal. Ja sigui optant per la lleugeresa de les micro-VMs de Microsoft o la robustesa de la suite de Docker, la clau és aprofitar l'arquitectura de WSL 2 per maximitzar el rendiment i mantenir la flexibilitat en el nostre flux de treball diari.