ANÚNCIO

~/questoes/devops

Qual é o propósito principal de um Dockerfile?

Responda, confira o feedback e use o resultado para orientar sua revisão.
Aula de referência INTENSIVÃO DOCKER EM 2H ⏰ | Curso gratuito (docker push, docker pull, docker compose, dockerfile…)
Para fixar

Entendendo o propósito do Dockerfile

Conceito central

O Dockerfile é um arquivo de texto contendo instruções que definem como construir uma imagem Docker passo a passo. Cada linha representa uma camada da imagem final, criando um blueprint para empacotar sua aplicação com todas as suas dependências.

Por que essa resposta faz sentido

A alternativa D está correta porque o Dockerfile serve especificamente para conter instruções que constroem uma imagem Docker camada por camada. Essas instruções incluem a imagem base, instalação de dependências, cópia de código e definição do comando de inicialização.

Armadilhas comuns

  • Confundir Dockerfile com Docker Compose: Dockerfile constrói uma única imagem, enquanto Docker Compose orquestra múltiplos containers.
  • Pensar que o Dockerfile executa containers: ele apenas define como construir a imagem. A execução acontece depois, com o comando docker run.
  • Achar que o Dockerfile faz download de imagens: o Dockerfile pode usar uma imagem base (com FROM), mas seu propósito principal é construir, não baixar.

Entenda as alternativas

A

Um Dockerfile não lista containers disponíveis. Ele cria imagens. A listagem de imagens disponíveis acontece no Docker Hub, mas o Dockerfile é um arquivo que você escreve para construir suas próprias imagens.

B

Definir como múltiplos containers devem ser configurados e conectados em rede é função do Docker Compose, não do Dockerfile. O Docker Compose usa um arquivo YAML para orquestrar vários containers juntos.

C

Armazenar dados de configuração em nuvem é responsabilidade de outras ferramentas e plataformas, não do Dockerfile. O Dockerfile constrói imagens, não armazena dados em nuvem.

D

Essa é a definição exata do Dockerfile. É um arquivo de texto com instruções sequenciais que o Docker executa para construir uma imagem, onde cada instrução cria uma nova camada na imagem final.

Dica prática: Quando criar seu primeiro Dockerfile, comece simples: use uma imagem base (como FROM ubuntu:22.04), instale dependências (RUN apt-get install), copie seu código (COPY), e defina o comando de inicialização (CMD). Depois execute docker build -t minha-app . para construir a imagem.

Revise pensando: Se o Dockerfile é o blueprint, o que seria a imagem Docker resultante? E qual comando você usaria para criar essa imagem a partir do Dockerfile?