Desempenho de construção de contêineres Go: Nix nem sempre é mais rápido

2025-04-28
Desempenho de construção de contêineres Go: Nix nem sempre é mais rápido

Este artigo compara diferentes métodos para construir contêineres Go, utilizando Docker e Nix. O autor usa um programa Go simples com métricas do Prometheus para medir os tempos de construção e os tamanhos das imagens. O cache do Docker melhorou significativamente a velocidade de construção, enquanto o Nix, apesar de sua reprodutibilidade, não foi mais rápido. Imagens baseadas em scratch produziram contêineres muito menores do que distroless. A compressão UPX reduziu ainda mais o tamanho das imagens. O cache de proxy Athens e Squid também foram testados. O autor fornece dicas práticas para construir contêineres Go mais rápido, incluindo o uso de um arquivo .dockerignore para excluir a pasta .git.