Container Runtime Interface (CRI)

In the initial days Docker and Kubernetes were tightly coupled, as Kubernetes grew in popularity as a container orchestrator, other container runtimes wanted to join in, this led to the development of Container Runtime Interface (CRI) a interface that the container runtimes can expose such that they can integrate with Kubernetes, to be a Container Runtime Interface (CRI) for Kubernetes all the vendors should adhere to the Open Container Initiative (OCI) which set standards on how container runtimes should be developed

Here are some other container runtimes

crictl

This is the CLI tool to interact with CRI runtimes, maintained by the Kubernetes Team, it is used to debug tools and not as a standalone CLI to manage

DO NOT use crictl to manage docker containers

When we create a container with crictl it is done outside the knowledge of Docker, which can be removed by Docker as it is un-managed container from it’s POV