Kubernetes et Docker, un futur divorce qui sème la panique ?

Début décembre 2020, Kubernetes a annoncé la fin du support de Docker dès la version 1.20. Une annonce qui a semé un vent de panique. Pourquoi ? Qu’est-ce que ça change ?

Changer des habitudes devenues instinctives n’est pas facile pour quiconque, il en va de même dans l’univers du développement. Nourri par une bonne intention, Ian Coldwater, représentant de la CNCF, a tenu à prévenir la communauté de l’arrêt du support de Docker à partir de la version 1.20 de Kubernetes. Une communication un tantinet maladroite qui a instantanément semé la panique auprès des développeurs en cette fin d’année 2020.


En effet, le 3 décembre dernier, Ian Coldwater a tweeté :

« Le support de docker est déprécié dans Kubernetes. Vous devez y prêter attention et vous y préparer. Cela brisera vos clusters ».


Une déclaration qui a fait l’effet d’une bombe. Dans la foulée, l’intéressé a tenu à dédramatiser avec un nouveau tweet explicatif se voulant avant tout rassurant.

Les notes de version stipulent qu’il s’agit de « déprécier Docker en tant que conteneur d’exécution après la v1.20 de Kubernetes ». Docker étant déclaré comme officiellement obsolète, le module Dockershim ne sera donc plus pris en charge dans le kubelet. Néanmoins, les développeurs pourront toujours utiliser Docker qui restera fonctionnel et qui n’en demeure pas moins un excellent outil. Un message rappelant l’obsolescence de Docker apparaîtra à partir de la version 1.20 de Kubernetes mais concrètement, son abandon ne prendra effet qu’à partir de la version 1.23, prévue pour fin 2021 au plus tôt.



Ce virage s’explique par l’intérêt des dirigeants pour les environnements d’exécution Container Runtime Interface comme CRI-O ou containerd. Ces-derniers sont conçus spécialement pour Kubernetes. Les développeurs ont donc un peu moins d’une année pour revoir leurs nœuds de calculs et basculer vers les environnements préconisés.

Face à cette situation, l’appréhension des grands utilisateurs de Docker est tout à fait compréhensible mais il ne faut pas oublier que ce changement est prévu depuis longtemps et marque l'achèvement d'un engagement à long terme. Il convient de relativiser en rappelant aux développeurs que les compétences sur Docker ne sont pas soudainement devenues inutiles. Un avis partagé par Docker. Dieu Cao, directeur principal de la gestion des produits chez Docker, explique dans un article :

« si vous utilisez Docker, vous utilisez déjà containerd ». En fait, « Docker a créé le projet containerd, avec Google et IBM, en 2016, avec l'objectif de cette transition en tête. »
Par Baptiste.casnedi