- Jours 2 et 3 : Prise de conscience que le confinement va durer
- Jour 5 : On s'amuse pour passer le temps
Il y a presque un an, j’avais parlé de l’utilisation combinée de Visual Studio Code et Docker. À l’époque, WSL n’en était qu’à sa version 1 et le développement de la version 2 venait à peine d’être officialisé. Le temps a passé et les choses ont changé. WSL 2 est sur le point de sortir et avec lui va venir la possibilité d’utiliser un vrai noyau Linux et non plus une traduction à la volée d’appels systèmes.
Cela signifie que WSL 2 sera plus rapide et permettra aussi d'utiliser Docker, comme n’importe quelle distribution, sans hack ou script comme c’est le cas sur mon poste professionnel.
Utilisation par un développeur
Comme je fais partie du programme Windows Insiders, j’ai pu installer WSL 2 et je l’utilise pour tous mes développements. L’avantage par rapport à la situation précédente, c’est que Docker for Windows n’est plus nécessaire. Voici comment je procède.
- J’ouvre mon dossier contenant mon code source dans WSL 2.
- Je démarre le service Docker.
- Je lance mon conteneur ou mon ensemble de conteneurs (avec Docker Compose).
- (Facultatif) J’utilise l’extension Remote - Containers pour ouvrir un shell facilement dedans.
Bien entendu, on peut toujours travailler de concert avec Docker for Windows, qui intègre maintenant le support de WSL 2 (en bêta), ce qui permet de manipuler les mêmes conteneurs tant dans WSL que dans le monde Windows.
Reste que le produit a encore quelques bugs, ce qui est compréhensible. Par exemple, dans mon WSL 2, Docker refusait de démarrer.
docker Cannot start service cpp: cgroups: cannot find cgroup mount destination
Pour l’instant, le fix consiste à rentrer les commandes suivantes.
sudo mkdir /sys/fs/cgroup/systemd
sudo mount -t cgroup -o none,name=systemd cgroup /sys/fs/cgroup/systemd
Reste que je suis très content de la sortie prochaine de WSL 2 qui va résoudre les désagréments que je rencontre avec WSL 1.
Pour aller plus loin.