← Todos os termos

Nuvem

Container

Container é um ambiente de execução que usa mecanismos de isolamento para processos e seus recursos. Em configurações comuns, compartilha o kernel do hospedeiro. Uma imagem reúne arquivos e dependências para criar esse ambiente, mas não é o processo em execução.

Escrito pela equipe Compuzilla

Publicado em . Atualizado em .

Também chamado de: contêiner, contêiner de software

Neste verbete
Compuzilla sorrindo ao lado de um diagrama: Container.

Container

  1. Imagem e configuração
  2. Container iniciado
  3. Processos isolados
O isolamento depende da configuração; o ambiente comum compartilha o kernel do hospedeiro. Ilustração: equipe Compuzilla.

Imagem e execução

Uma imagem serve como base para iniciar containers. Ela pode incluir o aplicativo e bibliotecas necessárias. Ao executar, o sistema organiza processos, arquivos e outras condições para aquele ambiente.

Vários containers podem nascer da mesma imagem e manter estados distintos. Distribuir a imagem ajuda a repetir a base do ambiente; não garante que toda configuração externa também seja idêntica.

Compartilhar o kernel

Containers comuns usam o kernel do ambiente onde rodam. Máquinas virtuais normalmente apresentam uma máquina para um sistema convidado com kernel próprio. Essa diferença influencia compatibilidade e a forma de isolamento.

Limites de recursos, permissões e configuração continuam importantes. O estado escrito dentro de um container pode desaparecer quando o ambiente é removido, conforme a configuração. Dados que precisam sobreviver exigem uma estratégia de persistência e recuperação; a imagem original não é backup automático de tudo que aconteceu na execução.

Próxima leitura

O guia nuvem, máquinas virtuais e containers reúne essas distinções.

Na prática

  • Dois containers criados da mesma imagem podem executar processos separados com configurações diferentes.

Continue aprendendo

  • Verbete Processo — Processo é uma execução de programa com recursos e estado administrados pelo sistema operacional. Pode ter memória, arquivos abertos e uma ou mais threads. O arquivo do programa e o processo que o executa são coisas diferentes.
  • Verbete Kernel — Kernel é o núcleo de um sistema operacional: a parte que administra recursos e oferece mecanismos para processos usarem memória, dispositivos e outras funções. O sistema completo também inclui ferramentas, bibliotecas e serviços além desse núcleo.
  • Verbete Máquina virtual — Máquina virtual é um ambiente que apresenta recursos de uma máquina a um sistema convidado. Um mecanismo de virtualização administra CPU, memória e dispositivos virtuais. Vários convidados podem compartilhar um equipamento físico mantendo ambientes separados.
  • Guia Nuvem, máquinas virtuais e containers: três conceitos diferentes — Nuvem descreve um modelo de serviço; máquina virtual apresenta uma máquina a um sistema convidado; container isola processos usando mecanismos do ambiente. As técnicas podem participar de um serviço de nuvem e também existir fora dele.

Fontes para aprofundar