domingo, 21 de dezembro de 2025

Dominando o Dockerfile: Como Criar Imagens Personalizadas

🏗️ Dominando o Dockerfile: Como Criar Imagens Personalizadas

Última atualização: 21 de Dezembro de 2025 por Paulo Evaristo Ferreira da Silva

Introdução

Usar imagens prontas do Docker Hub (como Nginx ou MySQL) é ótimo, mas o verdadeiro poder do Docker surge quando você empacota sua própria aplicação.

Para isso, usamos um arquivo de texto simples chamado Dockerfile. Ele é a "receita de bolo" que diz ao Docker como construir sua imagem.

1️⃣ A Anatomia de um Dockerfile

Um Dockerfile é lido de cima para baixo. Cada linha cria uma nova camada (layer) na imagem final.

ℹ️ Dica: Camadas são cacheadas! Se você não mudar uma linha, o Docker reutiliza o cache na próxima build, tornando o processo muito rápido.

Principais Instruções:

  • FROM: Define a imagem base (ex: ubuntu, python, node).
  • WORKDIR: Define a pasta onde os comandos serão executados.
  • COPY: Copia arquivos do seu PC para dentro do container.
  • RUN: Executa comandos durante o build (instalar libs, etc).
  • CMD: O comando que roda quando o container inicia.

2️⃣ Exemplo Prático (Python)

Vamos criar uma imagem para um script Python simples. Crie um arquivo chamado Dockerfile (sem extensão) com o seguinte conteúdo:

# 1. Escolhemos uma imagem leve do Python
FROM python:3.9-slim

# 2. Definimos a pasta de trabalho dentro do container
WORKDIR /app

# 3. Copiamos o arquivo de dependências primeiro (Melhor uso de Cache!)
COPY requirements.txt .

# 4. Instalamos as bibliotecas
RUN pip install --no-cache-dir -r requirements.txt

# 5. Só agora copiamos o resto do código
COPY . .

# 6. Comando para iniciar o app
CMD ["python", "app.py"]

3️⃣ Construindo a Imagem (Build)

Com o arquivo salvo, abra o terminal na mesma pasta e rode:

# O ponto (.) no final indica "diretório atual"
docker build -t minha-app-python:v1 .
✅ O comando -t dá um nome (tag) para sua imagem, facilitando encontrá-la depois.

4️⃣ Boas Práticas Essenciais

  • Use .dockerignore: Funciona igual ao .gitignore. Evite copiar arquivos desnecessários (como pastas .git, node_modules ou arquivos de senha) para dentro da imagem.
  • Evite rodar como Root: Para produção, crie um usuário específico dentro do Dockerfile.
  • Minimize Camadas: Combine comandos RUN quando possível (ex: apt-get update && apt-get install...).

🎉 Conclusão

Criar imagens Docker permite que você garanta que sua aplicação rode exatamente da mesma forma no computador do desenvolvedor e no servidor de produção.

Tags:

#Docker #Dockerfile #DevOps #Programação #Tutorial

✍️ Autor: Paulo Evaristo Ferreira da Silva
📧 Contato: filisteus@gmail.com
💻 GitHub: @filisteus

Nenhum comentário:

Postar um comentário

 

bobox

Blogger news