Retour à l'accueil
  • #Cours
  • #Windows
  • #Docker
  • #Conteneur

Faire fonctionner des conteneurs Docker dans WSL.

Avec l'intégration WSL2 de Windows et Docker Desktop, comment utiliser des conteneurs Docker dans une machine virtuelle WSL ?

  1. Pré-requis
  2. Installer WSL 2 et lancer une machine virtuelle
  3. Installer Docker Desktop
    1. Configuration
  4. Tester le fonctionnement de Docker dans une machine virtuelle WSL
  5. Aller plus loin avec les sources

Avec l'arrivée de Docker Desktop il est dorénavant aisé de faire « tourner » des conteneurs Docker sous Windows. Il est par contre moins simple d'utiliser d'autres outils propres au monde UNIX que nous aurons besoin d'utiliser avec le Lazy Ansible de Manala (make par exemple).

Et comme nous préférons éviter d'installer trop de choses sur les machines hôtes nous opterons pour un fonctionnement qui reste relativement élégant à savoir lancer une machine WSL Debian et y faire tourner notre conteneur Docker. De cette manière nous disposerons de l'ensemble de l'outillage Linux, sans avoir à l'installer sur notre poste.

Pré-requis

  • Windows 10 au minimum
  • Installer terminal windows (pour le confort).

Installer WSL 2 et lancer une machine virtuelle

  • S'assurer que l'on utilise bien la version 2 de WSL: wsl --set-default-version 2
  • Installer et lancer une machine virtuelle Debian: wsl --install -d Debian

Il faudra ensuite renseigner un nom d'utilisateur ainsi qu'un mot de passe (à ne pas perdre de préference). Vous devriez au final obtenir un shell comme ci-dessous, félicitation vous êtes dans une machine virtuelle Debian WSL !

Un shell WSL
Un shell WSL

Installer Docker Desktop

La partie la plus simple, téléchargez et installez le ici: https://docs.docker.com/desktop/windows/wsl/#download

Configuration

Il y a quelques options à vérifier / activer pour un bon fonctionnement.

  • Tout d'abord vérifier que le support de WSL 2 est activé dans les paramètres (Resources -> WSL integration);
Les paramètres Docker Desktop
Les paramètres Docker Desktop
  • Ensuite vérifier que le support pour votre distribution est activé (Debian);

Tester le fonctionnement de Docker dans une machine virtuelle WSL

Il faudra pour cela quitter et relancer (Dans un PowerShell wsl -d Debian) votre machine virtuelle Debian. Une fois à l'intérieur de celle-ci il sera nécessaire de donner les droits à votre utilisateur d'utiliser Docker en l'ajoutant au groupe du même nom.

usermod -a -G docker <username>

Pour terminer la commande docker ps devrait vous renvoyer l'écran ci-dessous:

Ajouter un utilisateur au groupe docker
Ajouter un utilisateur au groupe docker

Aller plus loin avec les sources

Crédits: photo de couverture par Jason Cooper