Installer kubernetes sur Windows
Depuis l’annonce de la fin de la gratuité de Docker Desktop pour les entreprises, je cherche une solution pour le remplacer. Et pour le moment je ne trouve pas mon bonheur et oui, je dois construire des images à base de Windows.
Pour ceux qui sont à la recherche d’une implémentation de kubernetes sur un poste de développement pour construire des solutions à base de Linux, Minikube est une belle solution. Il peut facilement servir de base pour une formation à kubernetes.
Minikube utilise hyper-v ou wls2 comme hyperviseur et donc une mini distribution dédiée pour faire tourner le cluster kubernetes. Ma préférence va à la solution hyper-v, car bien plus performante que celle de wsl2 et surtout moins de contraintes (ipv6, virtualisation imbriquée, …).
Installation de minikube sur Windows
Le plus simple est d’utiliser chocolatey ↗. Dans une fenêtre powershell ouverte avec les droits admin tapez la commande suivante :
Si vous n’avez pas activé hyper-v dans la même fenêtre powershell admin :
S’il est installé, mais désactivé :
Une fois installée attention à ne pas démarrer votre minikube dans la même
fenêtre powershell. En effet, pas besoin des droits admin pour démarrer
l’instance minikube. Si WSL2 est activé il l’utilisera sinon il tentera
alors sous hyper-v. On peut forcer le choix en ajoutant à la fin de la commande
--driver=hyperv
.
Ensuite il est possible d’utiliser la classique commande kubectl pour manager votre cluster
Pour réinitialiser le cluster le plus simple est de le détruire.
Construire des images docker
Il est possible d’utiliser les ressources du cluster pour construire des images Docker. Pour cela il faut installer la cli de docker, le lien étant difficile à trouver le voici : https://download.docker.com/win/static/stable/x86_64/ ↗
Je vous conseille de l’installer dans le même répertoire que minikube:
C:\Program Files\Kubernetes\Minikube
Dans une fenêtre powershell, il faut activer l’environnement docker :
A partir de là, vous pouvez lancer les commandes classiques de docker:
Mais attention, il est seulement possible de faire tourner des images avec un noyau Linux. Et c’est là que ça coince pour moi.
Mais voilà en regardant dans l’archive, on trouve quoi dockerd. Je ferais un billet.zip