A conteinerização empacota aplicações de software com todas as suas dependências em unidades isoladas e portáteis chamadas contêineres. Ao contrário da máquinas virtuais (VMs), que exigem um sistema operacional (SO) completo, os contêineres compartilham o kernel do sistema operacional hospedeiro enquanto mantêm o isolamento de aplicações por meio de funcionalidades como namespaces Linux e cgroups.
Cada contêiner inclui o código da aplicação, o tempo de execução, as ferramentas do sistema, as bibliotecas e as configurações necessárias para a execução, tudo empacotado como imagens de contêineres — modelos somente de leitura que servem como blueprints para a criação de contêineres. Essa abordagem pode garantir um desempenho consistente, quer seja implementada no notebook do desenvolvedor, no ambiente de testes, no data center de produção ou na infraestrutura de nuvem híbrida.
O conceito de conteinerização e isolamento de processos existe há décadas, mas o surgimento do Docker em 2013 transformou o cenário. O Docker forneceu ferramentas de desenvolvedor simples de nível empresarial e uma abordagem de empacotamento universal que acelerou a adoção generalizada.
Após o sucesso do Docker, o Kubernetes emergiu como a plataforma de orquestração de contêineres dominante, originalmente desenvolvido pelo Google e doada como um projeto de código aberto para a Cloud Native Computing Foundation (CNCF) em 2014.
Essa stack tecnológica forma a base sobre a qual as ferramentas e práticas de gerenciamento de contêineres são construídas. Mecanismos de contêineres como o Docker são feitos para lidar com a execução do tempo de execução. Uma plataforma de orquestração como o Kubernetes gerencia a complexidade operacional do agendamento e da automatização da implementação, do gerenciamento e do escalonamento de centenas de milhares de aplicações conteinerizadas.
A poderosa combinação do Docker e do Kubernetes impulsionou a adoção generalizada pelas empresas. Uma pesquisa da IBM de 2021 descobriu que 61% dos entrevistados haviam incorporado contêineres em pelo menos metade de suas novas aplicações nos dois anos anteriores. A pesquisa também revelou que 64% estão planejando taxas de adoção semelhantes para o desenvolvimento futuro.