Sobes.tech
Junior

Por que princípios funciona o Docker?

sobes.tech IA

Resposta da IA

O Docker funciona com base nos seguintes princípios-chave:

  • Contenerização: Isolamento de aplicações e suas dependências em módulos padronizados e portáteis (contentores).
  • Imagens: Pacotes leves e autónomos que incluem tudo o que é necessário para executar uma aplicação (código, bibliotecas, ferramentas do sistema, configurações). São construídos passo a passo usando Dockerfile.
  • Camadas: As imagens são compostas por camadas. Cada camada representa um conjunto de alterações no sistema de ficheiros. As camadas são armazenadas em cache e podem ser reutilizadas por diferentes imagens, economizando espaço e acelerando a construção.
  • Isolamento: Os contentores usam mecanismos de isolamento do núcleo Linux (namespaces e cgroups) para separar processos, sistemas de ficheiros, redes e outros recursos do sistema hospedeiro e de outros contentores.
  • Imutabilidade das imagens: Quando um contentor é iniciado a partir de uma imagem, a própria imagem não muda. Todas as alterações dentro do contentor ocorrem numa camada de escrita sobre a imagem base, que é eliminada juntamente com o contentor (se não forem utilizados volumes).
  • Portabilidade: Um contentor desenvolvido e construído num ambiente pode ser executado em qualquer outro ambiente onde o Docker esteja instalado, sem necessidade de configurações adicionais de dependências no hospedeiro.
  • Abordagem declarativa: O Dockerfile descreve o processo de construção da imagem num estilo declarativo, tornando-o reproduzível e automatizável.

Exemplo de Dockerfile:

# Utiliza uma imagem base com Alpine Linux
FROM alpine:latest

# Instala o pacote curl
RUN apk add --no-cache curl

# Especifica o comando a ser executado ao iniciar o contentor
CMD ["curl", "https://www.example.com"]