ANÚNCIO

~/questoes/devops

Qual é o tamanho típico de um container Docker?

Responda, confira o feedback e use o resultado para orientar sua revisão.
Aula de referência #01 – O que é́ o Docker e para que serve? | Thi Code
Para fixar

Entendendo o Tamanho Reduzido dos Containers Docker

Conceito central

Containers Docker são muito mais leves que máquinas virtuais porque compartilham o kernel do host e contêm apenas a aplicação e suas dependências específicas. Esse isolamento eficiente é uma das principais vantagens da containerização.

Por que essa resposta faz sentido

Containers Docker pesam apenas alguns megabytes porque não precisam incluir um sistema operacional completo. Eles compartilham o kernel do sistema host e carregam apenas o essencial: a aplicação, bibliotecas e dependências necessárias. Isso os torna incrivelmente leves e rápidos para iniciar.

Armadilhas comuns

  • Confundir o tamanho de um container em execução com o tamanho da imagem Docker. A imagem é comprimida e o container descompactado usa mais espaço, mas ambos são muito menores que máquinas virtuais.
  • Pensar que containers são máquinas virtuais leves. Na verdade, são processos isolados que compartilham o kernel, uma arquitetura completamente diferente.
  • Acreditar que containers precisam de redundância interna de dados. Redundância é gerenciada externamente através de orquestração, não dentro do próprio container.

Entenda as alternativas

A

Containers não armazenam múltiplas cópias da aplicação para redundância. Cada container é uma instância isolada e única. Redundância e alta disponibilidade são gerenciadas em nível de orquestração, não dentro do próprio container.

B

Essa é a resposta correta. Containers pesam alguns megabytes porque compartilham o kernel do host. Isso os torna drasticamente menores que máquinas virtuais, que precisam incluir um sistema operacional inteiro com gigabytes de tamanho.

C

Embora centenas de megabytes seja possível para algumas imagens Docker mais pesadas, o tamanho típico é bem menor. Imagens base simples como Alpine Linux ou Node.js ocupam apenas alguns megabytes. O tamanho varia conforme a aplicação, mas a média é bem reduzida.

D

Containers são fundamentalmente diferentes de máquinas virtuais em tamanho. Máquinas virtuais podem ocupar vários gigabytes porque incluem um sistema operacional completo. Containers não têm essa overhead, tornando-os muito mais leves.

Dica prática: Quando você fizer download de uma imagem Docker do Docker Hub, repare no tamanho mostrado. Imagens populares como 'nginx:latest' ou 'python:3.11-slim' ocupam tipicamente entre 50MB e 500MB, bem diferente dos 2-10GB de uma máquina virtual. Teste localmente com 'docker images' para ver os tamanhos reais.

Revise pensando: Se containers pesam apenas megabytes, por que conseguem isolar aplicações de forma semelhante aos containers? O que eles compartilham com o sistema host?