Avant de déployer son conteneur Docker dans Azure, il est intéressant de pouvoir le valider dans son environnement de développement. Nous allons voir comment nous pouvons déployer notre application dans un cluster Kubernetes (k8s) en local pour facilement le tester.
Tout d’abord Kubernetes doit être activé. Pour vérifier cela, accéder aux paramètres de Docker, onglet Kubernetes vous devez voir :
Ensuite vérifier que le contexte Kubernetes de votre poste de dev est bien le contexte local (docker-for-desktop) :
Nous pouvons alors accéder à l’interface Kubernetes grâce à la commande :
kubectl proxy
L’interface web est alors accessible à cette adresse :
http://localhost:8001/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy
Je vais maintenant préparer mon fichier yaml de déploiement. On peux partir sur la même base que dans le précédent article :
Un changement (forcément) le lien vers mon image :
Notez bien la propriétés image qui à maintenant pour valeur uniquement le nom de mon image et le tag souhaité. Je ne précise plus de registry puisqu’elle est locale.
Je dois également préciser cette variable : ImagePullPolicy pour lui indiquer que si mon image n’est pas présente dans le cluster il doit la récupérer à partir de la registry courante. Étonnement cela ne fonctionne pas sans.
Je peux maintenant tester mon yaml (je l’ai push sur Github) :
kubectl create -f .\deploytoaksLocal.yaml
En sortie je dois obtenir :
Je relance l’interface web :
Je retourne sur le dashboard et je constate bien le déploiement de mon service :
De la même manière que dans le précédent article, en cliquant sur l’ip externe automatiquement attribué par K8s j’affiche bien mon application web :
J’ai maintenant un moyen simple de tester en local mon cluster k8s !
Bon debug ! A bientôt 🙂