WSL Containers : des conteneurs Linux natifs sous Windows 11, sans Docker Desktop
Microsoft a présenté à la Build 2026 une nouveauté qui intéresse directement les
techniciens systèmes : WSL Containers. Windows 11 peut désormais créer,
lancer et gérer des conteneurs Linux nativement, y compris en arrière-plan,
sans installer Docker Desktop ni aucun outil tiers. Tout passe par une
nouvelle commande intégrée à WSL : wslc.exe.
⚠️ Attention au vocabulaire : ce n'est pas « WSL 3 ». Microsoft a explicitement démenti une nouvelle version. WSL Containers est une fonctionnalité qui s'ajoute à l'infrastructure existante de WSL 2 — elle réutilise le noyau Linux déjà fourni par WSL 2.
Rappel : c'est quoi un conteneur ?
Un conteneur empaquette une application avec tout ce dont elle a besoin pour tourner (bibliothèques, dépendances, configuration). Résultat : elle s'exécute de la même façon partout, quel que soit le système hôte. C'est la brique de base du déploiement moderne, et une notion incontournable du module Virtualisation du TSSR.
Jusqu'ici, sous Windows, il fallait généralement passer par Docker Desktop (lourd, et payant en entreprise au-delà d'une certaine taille). WSL Containers propose une alternative intégrée et gratuite.
Les prérequis
C'est le point fort : il n'y a presque rien à installer. wslc.exe est
livré avec WSL, il n'y a donc pas de moteur séparé à ajouter.
# Mettre WSL à jour vers une version qui inclut wslc
wsl --update
# Vérifier que wslc est bien présent
wslc version
VS Code et Windows Terminal sont recommandés (mais facultatifs) pour une meilleure expérience de développement.
Premier conteneur en une commande
Pour tester, on lance une image d'exemple. Elle est téléchargée automatiquement si elle n'est pas déjà en local :
wslc run --rm hello-world
Si tu connais Docker, tu es en terrain connu : la syntaxe de wslc est
volontairement familière.
# Exécuter une commande dans un conteneur jetable (supprimé après)
wslc run --rm -it ubuntu:latest bash -c "echo Bonjour depuis un conteneur WSL !"
# Lancer un serveur web NGINX EN ARRIÈRE-PLAN (-d) et publier le port 8080 → 80
wslc run -d --rm -p 8080:80 --name web nginx
# Interroger le serveur depuis Windows
curl localhost:8080
# Lister les conteneurs qui tournent
wslc container list
# Exécuter une commande dans le conteneur en cours
wslc exec web cat /etc/os-release
# Arrêter le conteneur
wslc container stop web
Le drapeau -d (detached) est la clé de la promesse « en arrière-plan » : le
conteneur tourne sans monopoliser ton terminal. Et comme on l'a lancé avec
--rm, il est supprimé automatiquement dès qu'on l'arrête.
Les commandes à connaître
| Commande | Rôle |
|---|---|
wslc image list | lister les images présentes en local |
wslc container list | lister les conteneurs en cours (--all pour tous) |
wslc stats | voir l'usage CPU/mémoire des conteneurs |
wslc build -t <nom> . | construire une image depuis un Containerfile |
wslc container logs <nom> | consulter les journaux d'un conteneur |
wslc container prune | supprimer les conteneurs arrêtés |
wslc image prune | supprimer les images inutilisées |
💡 Deux réflexes qui sauvent :
wslc --helpliste toutes les commandes, etwslc <commande> --helpdétaille une commande précise.
Construire sa propre image
On décrit l'image dans un Containerfile (l'équivalent d'un Dockerfile) —
par exemple pour une petite application Python :
FROM python:3
WORKDIR /app
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY . .
EXPOSE 8000
CMD ["python", "manage.py", "runserver", "0.0.0.0:8000"]
Puis on construit et on lance, en publiant le port pour y accéder depuis Windows :
wslc build -t mon-app .
wslc run -d --rm -p 8000:8000 --name app mon-app
Un wslc exec app uname qui répond « Linux » confirme que le conteneur
tourne bien sur le noyau Linux de WSL 2, même si tu l'as piloté depuis
PowerShell.
Le vrai game-changer : l'API en arrière-plan
Au-delà de la ligne de commande, Microsoft fournit une API Windows dédiée. Concrètement, un logiciel Windows peut exploiter des conteneurs Linux en arrière-plan sans que l'utilisateur final n'ait jamais à ouvrir un terminal.
C'est là que se trouve la nouveauté annoncée par la presse : ce ne sont plus seulement les développeurs qui manipulent des conteneurs à la main, mais aussi des applications qui peuvent embarquer discrètement une brique Linux.
Ce que ça change pour un technicien systèmes
- Poste de travail plus léger : plus besoin de Docker Desktop pour tester une image, monter un service ou reproduire un environnement Linux.
- Environnements de test rapides : un
wslc runet tu as un service Linux isolé, jetable, en quelques secondes. - Continuité Windows ↔ Linux : tu pilotes des conteneurs Linux depuis PowerShell, tout en restant sur ton poste Windows.
Disponibilité et limites
- Preview publique annoncée à la Build 2026 ; disponibilité générale visée pour l'automne 2026.
- Fonctionnalité greffée sur WSL 2 : ses performances et ses limites (accès
disque, réseau) restent celles de WSL 2. Range toujours ton code dans le
système de fichiers Linux (
\\wsl$) et non côté Windows, sous peine de lenteurs. - Ça ne remplace pas une orchestration de production (Kubernetes & co) : on est ici sur du poste de travail et du développement.
Pour aller plus loin
Ces conteneurs se pilotent en ligne de commande : si les bases du shell te manquent, le cours Bash de A à Z te met le pied à l'étrier. Et pour réviser les notions de virtualisation et de conteneurs, direction le module Virtualisation.
Sources : Microsoft Learn — Prise en main des conteneurs sur WSL, Clubic, Korben.