runtimes de containers_ porque não só de Docker vive o homem - O Docker é o que chamamos de um runtime de containers - Um runtime é o motor principal de execução dos containers - O Docker começou como um runtime completo - Hoje o Docker implementa o containerd
open container initiative - A OCI foi criada pela junção de várias empresas líderes no mercado de containers em 2015 - Hoje funciona nos moldes da CNCF e da Linux Foundation - a OCI tem o objetivo de criar um padrão de mercado seguido por todas as empresas que trabalham com containers - A OCI tem duas especificações, uma para imagens (chamada image-spec) e outra para os runtimes (runtime-spec) - O runc é uma implementação de referência para a runtime-spec
depois da OCI_ - Toda a imagem “OCI compliant” pode ser executada por qualquer runtime também “OCI compliant” - Outras empresas tem um norte para poder seguir quando desenvolvem seus próprios runtimes - O ecossistema de containers fica mais variado, mas ao mesmo tempo muito coeso e definido
kubernetes e containers como o kuberentes lida com containers - O Kubernetes suporta, por padrão mais de um runtime de execução (Docker e RKT) - Trocar de runtime requeria a recompilação total do kubelet - Solução: abstrair a interface de containers
dockershim o causador de todos os problemas - Shims são modificadores de chamada que atuam como proxies - O Docker não possuía um CRI pois ele era feito para usuários humanos - O time do Kubernetes teve que criar o próprio CRI para poder utilizar somente a parte programática do docker - Manter o shim era um trabalho complicado
o mais famoso - Criado pela OCI como um runtime de alto nível - Também é dito como sendo um gerenciador do runc - Gerencia imagens - Inicia/para containers através de comandos para o runc - Faz parte do Docker - Criado para ser manipulado via APIs e código
quem faz todo o trabalho - Wrapper ao redor da libcontainer - A libcontainers é a interface a nível de SO para criar containers - Especificação de referência para um runtime OCI - Utilizado pela maioria dos runtimes baseados em Linux