Les runtime Kubernetes CRI, deux alternatives à Docker

13 avril 2021

Récemment Kubernetes a annoncé  déprécier Docker comme runtime CRI  (Container Runtime Interface). S’en est suivi un mouvement de panique dans mon entourage sur la disparition de Docker. Au fil des articles de cette série, vous avez pu vous familiariser un petit peu plus avec les technologies de conteneurs, et constater que d’une part Docker a de multiples usages et que d’autre part il existe des alternatives convaincantes quelque soit l’usage qu’on en fait.

Dans cet article, nous allons parler des runtimes CRI, ces outils que Kubernetes (k8s pour les intimes) va utiliser pour créer les pods et lancer les conteneurs. Nous commencerons par un aperçu de ce qu’est le CRI de Kubernetes, nous verrons ensuite comment Docker s’intègre à Kubernetes avant de faire un rapide tour d’horizon des runtimes OCI qui existent aujourd’hui.

Le Container Runtime Interface de Kubernetes

Source :  CNCF

Kubernetes est un orchestrateur de conteneurs que l’on ne présente plus aujourd’hui. Qui dit orchestrateur de conteneurs, dit que celui-ci doit démarrer des conteneurs à un moment donné. Cette tâche ainsi que l’implémentation concrète des  pods  est dévolue au runtime CRI.

Sur chacun des nœuds d’un cluster k8s se trouve la kubelet. Il s’agit grosso modo de “l’agent k8s”, il est chargé de la gestion des conteneurs sur son nœud. C’est donc à lui d’appeler le runtime CRI. En plus de gérer le cycle de vie des conteneurs, le runtime CRI gère également la gestion des images depuis une registry.

L’interface CRI utilise le protocole  gRPC  et les messages sont au format  protocol buffer , un format binaire de Google.

Maintenant que nous en savons un petit peu plus sur le CRI, faisons un tour des runtimes CRI, en commençant par Docker.


Docker

Source :  Docker

Docker permet de faire toutes les opérations attendues par un runtime CRI, sauf qu’il n’implémente pas l’interface CRI. Un composant a été ajouté dans le code de la kubelet pour explicitement gérer les conteneurs avec Docker : c’est le  dockershim . C’est ce composant qui a été déprécié par Kubernetes.

Il faut rester vigilant au fait de ne plus utiliser Docker avec k8s : cela signifie aussi qu’il ne sera plus possible de faire du “Docker in Docker”, puisque les nœuds n’auront plus de socket Docker.

Il est donc maintenant évident que Docker n’est plus l’outil idéal pour s’interfacer avec Kubernetes. Mais docker n’est plus le monolithe qu’il était, il utilise containerd, qui lui est compatible avec le CRI.

Containerd

Source :  CNCF

Containerd  est un container engine utilisé par Docker qui est compatible avec le CRI. Il est le remplaçant le plus naturel à Docker dans un environnement k8s. C’est même une amélioration par rapport à Docker puisque l’on supprime un daemon et un composant du nœud.

Pour en savoir plus sur containerd, je vous invite à consulter l’épisode 2 de cette série sur les conteneurs.


Passons maintenant à l’autre runtime CRI bien connu : CRI-O.

CRI-O

Source :  CNCF

CRI-O  est un runtime CRI qui a la particularité d’être dédié à cette tâche, ce n’est pas un outil aux multiples usages comme Docker ou containerd. Il se veut léger et minimal.



Les principaux contributeurs de CRI-O sont Red Hat, Intel, Suse, Hyper et IBM. Il est le runtime par défaut d’ Openshift  (Red Hat),  SUSE CaaS platform  et  openSUSE Kubic  entre autres.

Conclusion

Docker ne sera bientôt plus utilisable par Kubernetes, mais comme nous l’avons vu, containers et CRI-O permettent tous les deux d’assurer le même service. Ils sont tous les deux déjà utilisés en production.



Ressources Agaetis

par David Walter 28 août 2025
Le contexte du projet Un grand groupe du secteur de l’énergie en France cherchait à exploiter les données massives issues des compteurs Linky. L’ambition : concevoir une plateforme dédiée au développement et au déploiement de micro-applications , tout en s’appuyant sur une infrastructure technique avancée et une méthodologie agile pour soutenir cette transformation. L’objectifs L’objectif principal était de créer un environnement robuste et évolutif permettant : d’analyser efficacement les données des points de mesure du réseau, de faciliter le développement rapide de micro-services, et de renforcer l’agilité des équipes grâce à des pratiques modernes de CI/CD. Durée de missions Plusieurs mois d’intervention , mobilisant les expertises Agaetis en infrastructure, automatisation et méthodes agiles pour cadrer, déployer et stabiliser la plateforme. Mise en oeuvre Pour atteindre ces objectifs, Agaetis a mis en place une approche complète : Installation et configuration d’infrastructure : mise en place d’un cluster Kafka/Mesos/Hadoop pour le traitement massif des données. Automatisation et scalabilité : développement de rôles Ansible pour permettre l’auto-scaling du cluster Mesos/Marathon/Zookeeper , assurant une gestion simplifiée par les équipes d’exploitation. Conseil en méthodologies agiles : alignement de la conception et du développement des micro-services avec les meilleures pratiques agiles. CI/CD intégrée : mise en œuvre de pipelines d’intégration, de livraison et de déploiement continus avec Jenkins et GitLab . Résultat obtenu La solution déployée a permis : la mise en place d’une plateforme analytique robuste pour interpréter efficacement les données Linky, une infrastructure flexible et évolutive , garantissant une gestion optimale des ressources, une accélération du développement grâce à l’adoption de méthodologies agiles, une amélioration significative des processus CI/CD , renforçant la productivité et la qualité des livrables. Facteurs clés de succès Expertise technique des équipes Agaetis sur les environnements distribués complexes. Automatisation et scalabilité intégrées dès la conception, facilitant l’exploitation à long terme. Adoption des méthodologies agiles , renforçant la collaboration et la rapidité d’exécution. Partenariat de confiance avec le client, assurant une solution sur mesure et durable. Et vous ? Vous vous interrogez sur : la valorisation de vos données métiers, la mise en place d’une infrastructure évolutive pour vos applications, ou l’intégration de méthodologies modernes pour accélérer vos projets IT ? 👉 Contactez nos experts pour découvrir comment Agaetis peut transformer vos défis en leviers d’innovation.
par David Walter 28 août 2025
Le contexte du projet Platform Garden , une startup internationale, souhaitait exploiter ses données pour créer de la valeur et renforcer sa stratégie d’innovation. L’enjeu majeur était d’exploiter la data visualization et d’identifier comment les données existantes et futures pouvaient ouvrir de nouvelles opportunités de croissance . L’objectifs Les ambitions principales de Platform Garden étaient de : analyser et enrichir un gisement de données sur les plantes et arbustes, valoriser ces données en développant de nouveaux services et fonctionnalités, et intégrer efficacement ces données dans les systèmes existants tout en optimisant les coûts technologiques et financiers. Durée de missions Mission en plusieurs phases , de l’idéation jusqu’au développement de nouvelles fonctionnalités, en accompagnement continu avec les équipes de Platform Garden. Mise en oeuvre Agaetis a déployé une approche progressive et collaborative : Phase d’idéation et cadrage des besoins : animation d’ateliers pour qualifier et prioriser les attentes de Platform Garden. Recherche et analyse des sources de données : exploration des données existantes et évaluation de leur pertinence pour l’intégration dans l’écosystème de la startup. Développement de nouvelles fonctionnalités : conception de services innovants, tels que des algorithmes prédictifs, afin d’exploiter pleinement la valeur des données collectées. Résultat obtenu La mission a permis : Enrichissement du gisement de données : une base de données plus complète, ouvrant la voie à de nouvelles découvertes et usages. Création de valeur et nouveaux services : développement de fonctionnalités inédites comme Jardi’Alerte ou le futur Végéscore , offrant un avantage compétitif. Innovation continue : mise en place d’un processus évolutif, garantissant une adaptation constante aux technologies et aux besoins du marché. Facteurs clés de succès Approche agile et progressive d’Agaetis. Ateliers collaboratifs favorisant l’alignement des besoins et des priorités. Expertise data et innovation appliquée à un domaine spécifique et émergent. Capacité à transformer la donnée en services concrets , différenciants pour les clients finaux. Et vous ? Vous vous interrogez sur : la valorisation de vos données pour créer de nouveaux services, l’intégration de fonctionnalités prédictives dans vos produits, ou la mise en place d’une stratégie d’innovation data adaptée à votre secteur ? 👉 Contactez nos experts pour transformer vos données en leviers de croissance et d’innovation.
Show More