Container
O container é uma unidade leve e portátil de software que reúne tudo o que uma aplicação precisa para funcionar — código, bibliotecas, configurações e dependências — em um ambiente isolado. Ele garante que a aplicação seja executada da mesma forma em qualquer sistema, independentemente das diferenças de configuração do computador ou do servidor.

Figura 1 – Estrutura conceitual de um container.
Fonte: Docker Inc. (2021)
Diferente de uma máquina virtual, o container não precisa de um sistema operacional completo. Ele compartilha o kernel do sistema hospedeiro, utilizando apenas os recursos necessários para rodar o aplicativo. Isso o torna mais rápido na inicialização, mais eficiente no uso de recursos e mais fácil de mover entre diferentes ambientes.

Figura 2 – Diferença entre containers e máquinas virtuais.
Fonte: Docker Inc. (2021)
Cada container é criado a partir de uma imagem, que é um modelo imutável contendo todas as instruções e componentes da aplicação. Quando um container é executado, ele se torna uma instância ativa dessa imagem, funcionando de maneira independente dos demais containers — ainda que estejam no mesmo host.
O uso de containers traz vantagens significativas para o desenvolvimento e a operação de sistemas modernos:
- Portabilidade: o mesmo container roda em qualquer lugar — do notebook do desenvolvedor à nuvem.
- Isolamento: falhas ou alterações em um container não afetam os outros.
- Escalabilidade: containers podem ser replicados rapidamente para atender a mais usuários.
- Eficiência: consomem menos recursos que máquinas virtuais, permitindo maior densidade de aplicações.
Exemplo prático
Imagine uma aplicação web empacotada em uma imagem Docker. Ao executar o comando:
docker run -d -p 8080:80 minhaapp
é criado um container chamado minhaapp, que executa a aplicação de forma isolada, sem interferir em outros processos do sistema. Se outro container for iniciado com a mesma imagem, ele rodará de maneira independente, mantendo a consistência do ambiente.

Figura 3 – Execução de containers Docker de forma isolada.
Fonte: UFRJ – Grupo de Teleinformática e Automação (2017)
O container é o elemento central da computação moderna em nuvem: leve, rápido, portátil e confiável. Ele tornou possível o desenvolvimento ágil e o uso eficiente de recursos em infraestruturas escaláveis.
