Executando verificação de segurança...
1

Pitch: De 600MB para 20MB: Otimizando o cURL com HTTP/3 para containers

Recentemente, precisei usar o cURL para testar HTTP3 no nginx e na minha distro (ubuntu) não existe como instalar (pelo menos não encontrei) o cURL com suporte a HTTP3, ao pesquisar encontrei uma imagem docker que já tem compilado com suporte a HTTP3 e é muito simples de usar:

Requisição HTTP/3 pura

docker run -it --rm overdigo/tiny-curl-http3 curl -IL --http3-only https://blog.cloudflare.com

Mas a imagem que encontrei chegava a pesar mais de 600MB. Para uma ferramenta de linha de comando, isso é um exagero.

Decidi criar o tiny-curl-http3. Utilizando multi-stage builds e focando no essencial, consegui uma imagem final de apenas ~20MB, compatível com AMD64 e ARM64.

Destaques:

Suporte nativo a HTTP/3 (QUIC).

Disponível no Docker Hub para uso imediato.

Código fonte (OSS): https://github.com/overdigo/tiny-curl-http3
Imagem no Docker Hub: https://hub.docker.com/r/overdigo/tiny-curl-http3

Pull da imagem

docker pull overdigo/tiny-curl-http3

Teste rápido de versão

docker run -it --rm overdigo/tiny-curl-http3 curl -V

Requisição HTTP/3 pura

docker run -it --rm overdigo/tiny-curl-http3 curl -IL --http3-only https://blog.cloudflare.com

Com fallback automático (HTTP/3 → HTTP/2 → HTTP/1.1)

docker run -it --rm overdigo/tiny-curl-http3 curl -IL --http3 https://exemplo.com

Carregando publicação patrocinada...