Blog

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

CommandeRôle
wslc image listlister les images présentes en local
wslc container listlister les conteneurs en cours (--all pour tous)
wslc statsvoir 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 prunesupprimer les conteneurs arrêtés
wslc image prunesupprimer les images inutilisées

💡 Deux réflexes qui sauvent : wslc --help liste toutes les commandes, et wslc <commande> --help dé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 run et 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.