Mantenha credenciais de proxy de build fora das imagens Docker
Use conscientemente as entradas de proxy de build predefinidas do Docker e evite transformar segredos temporários em valores persistentes do ambiente da imagem.
Para baixar pacotes durante um build, use as entradas de proxy predefinidas do Docker em vez de salvar uma rota temporária em ENV do Dockerfile. Uma invocação POSIX pode fornecer:
HTTP_PROXY=http://203.0.113.10:8080 \
HTTPS_PROXY=http://203.0.113.10:8080 \
docker build --build-arg HTTP_PROXY --build-arg HTTPS_PROXY .Substitua o endpoint da documentação. Omitir valores depois dos nomes de --build-arg faz com que sejam obtidos do ambiente desta invocação. Essas entradas predefinidas não exigem declarações correspondentes de ARG.
Por padrão, o Docker exclui esses argumentos de proxy do tratamento do cache de build e de docker history. Referenciá-los explicitamente no Dockerfile muda esse comportamento; não adicione declarações apenas porque outro exemplo de argumento de build faz isso.
O processo ainda recebe os valores. Uma URL autenticada pode escapar pelo ambiente impresso, logs, configuração copiada ou operações posteriores na imagem, mesmo que uma visualização do histórico a oculte. ENV no Dockerfile torna a rota parte do ambiente final da imagem e pode transformar um proxy exclusivo do build em dependência de todos os contêineres.
Quando um comando precisa de material sensível, os mounts de segredo do BuildKit fornecem uma interface de segredo durante o build. Limite a credencial a essa operação; não imprima o mount nem copie seu conteúdo para uma camada da imagem.
Essas entradas de build não configuram nem o pull anterior do registro feito pelo daemon nem a rota de host de um builder remoto inacessível. Depois, inspecione a imagem final pretendida e a configuração da aplicação em busca de valores persistentes de proxy, sem presumir que o tratamento temporário removeu todas as cópias.