L'installation de Docker WSL 2 est incomplète

Après avoir remplacé Docker Desktop sous Windows 10 par une version plus récente, j’ai cliqué pour le démarrer et j’ai obtenu l’erreur suivante :

L’installation de WSL 2 est incomplète

Le noyau Linux WSL 2 est maintenant installé via un package de mise à jour MSI séparé. Veuillez cliquer sur le lien et suivre les instructions pour installer la mise à jour du noyau :

https://aka.ms/wsl2kernel

Appuyez sur redémarrer après avoir installé le noyau Linux

Par défaut, dans Paramètres > Général, l’option « Utiliser le moteur basé sur WSL 2 » était déjà sélectionnée. Cela pourrait être dû au fait que j’ai déjà Ubuntu 18.04 LTS installé localement.

Si je vais dans les Paramètres de Docker Desktop > Ressources > INTÉGRATION WSL

Vous n’avez aucune distribution WSL 2. Veuillez convertir une distribution WSL 1 en WSL
2, ou installer une nouvelle distribution et elle apparaîtra ici.

Comment puis-je faire fonctionner Docker ?


Source : Super User

Il y a deux façons de le faire fonctionner :

  • En utilisant le moteur basé sur WSL 2.

  • Sans utiliser le moteur basé sur WSL 2.

1 - En utilisant le moteur basé sur WSL 2

Sur cette page sous « Télécharger le package de mise à jour du noyau Linux ».

et ensuite Docker démarrera sans problème

2 - Sans utiliser le moteur basé sur WSL 2

Si l’objectif est simplement de faire fonctionner Docker, vous pouvez simplement commencer par décocher la case « Utiliser le moteur basé sur WSL 2 ». Cela peut donner l’erreur suivante :

Fonctionnalité(s) Windows requise(s) non activée(s) : Hyper-V.

Basculer vers le moteur basé sur WSL 2 ?

Pour activer Hyper-V :
https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/quick-start/enable-hyper-v

Donc, dans PowerShell 7, exécutez la commande :

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V
-All

ce qui nécessite de redémarrer l’ordinateur pour terminer l’opération. Ensuite, en relançant Docker, vous pouvez obtenir l’erreur suivante :

Docker n’a pas réussi à s’initialiser

Une ou plusieurs erreurs se sont produites.

Finalement, en cliquant simplement pour relancer, Docker finira par démarrer