Interoperability of open-source tools: the emergence of interfaces

Historically, interface adoption has been encountered in the early stages of Kubernetes evolution. For example, Container Runtime Interface (CRI) was introduced in its alpha release in Kubernetes v1.5, while Container Network Interface (CNI) was announced as a CNCF hosted project in 2017. These projects define a solid set of guidelines to enhance the portability and connectivity of containerized applications.