engenharia
Arquitetura Docker para engenheiros de CI
Daemon, containerd, BuildKit e snapshotter — o que cada um faz e qual deles está tornando sua construção lenta.
{autor} · {papel} · {data} · {minutos} {minutosLabel}
A maioria dos conselhos de desempenho do Docker é uma lista de truques do Dockerfile. Funciona melhor se você souber qual componente cada truque realmente aborda.
As peças
Qual deles é lento
- Lento antes de qualquer etapa ser executada → início do daemon e extração de imagem; consertar com um corredor quente e um cache pull-through
- Lento durante COPY e RUN com alta espera de E/S → o snapshotter no disco conectado à rede; corrigir com NVMe local
- Reconstruindo camadas que não foram alteradas → Cache do BuildKit; corrigir a ordem das instruções e o back-end do cache
- arm64 catastroficamente lento → QEMU, não Docker; corrigir com executores nativos
Seu próximo build pode ser duas vezes mais rápido, pela metade do preço
Comece grátis. Sair é a mesma linha, e publicamos esse diff também.
Relacionado
CI quando seus colegas de equipe são agentesOs agentes de codificação de IA pressionam com muito mais frequência do que os humanos. Veja como isso muda o design do pipeline e o controle de custos.Por que publicamos instruções para sairCada página de migração neste site inclui a diferença para migrar de volta. Aqui está o raciocínio.O que aprendemos executando um milhão de jobs de CITempo de fila, comportamento do cache, dimensionamento correto e modos de falha que só aparecem em escala.Pare de tentar novamente testes instáveisAs novas tentativas automáticas convertem um bug real em um bug intermitente e treinam sua equipe para desconfiar de cada falha.