Pular para o conteúdo
Tecnologia

Erros Docker podem ser frustrantes. Aprenda a diagnosticar e resolver os problemas mais comuns rapidamente.

Conceitos Principais

Container Lifecycle

Created → Running → Exited. Logs persistem após exit. Inspect mostra config e estado. Restart policy define comportamento em crash.

Logging

Stdout/stderr capturados. docker logs container. -f para follow. --tail N para últimas linhas. JSON driver default.

Network Debug

Inspect network mostra containers conectados. Ping entre containers testa conectividade. Port mapping issues: verificar -p flags.

Storage Issues

Disk full: prune images/containers. Permissions: user mismatch host/container. Volume mount issues: path errado.

Passo a Passo

  1. Container Não Inicia: Logs: docker logs container. Inspect: docker inspect container | grep Error. Common: CMD errado, port já em uso, volume não existe.
  2. Permission Denied: User mismatch: container user ID ≠ host. Fix: RUN chown no Dockerfile. Ou: -u $(id -u):$(id -g). Bind mounts herdam permissions do host.
  3. Network Issues: Ping falha: docker exec container ping outro-container. DNS não resolve: user-defined network? Firewall blocking? Port correto?
  4. Out of Disk: Prune: docker system prune -a. Remove tudo parado + dangling images. docker volume prune. docker builder prune. Libera GBs.
  5. Build Falha: Cache corrompido: --no-cache. Context muito grande: .dockerignore. Network timeout: retry ou mirror. Syntax error: lint Dockerfile.

Boas Praticas

Recomendacoes

• Sempre cheque logs primeiro

• Use docker inspect para config

• Exec para debugar container ativo

• Prune regularmente

• Monitore disk usage

Erros Comuns

Evite estes erros

• Deletar container sem ver logs

• Não usar .dockerignore

• Ignorar disk usage alerts

• Não versionar imagens (debug impossível)

Checklist

  • Logs verificados
  • Inspect executado
  • Network testada
  • Disk space disponível
  • Dockerfile validado
  • Permissions corretas
  • Restart policy configurado