Na sťahovanie balíkov počas buildu používajte preddefinované proxy vstupy Dockeru namiesto ukladania dočasnej trasy do ENV v Dockerfile. Volanie POSIX môže poskytnúť:

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 .

Nahraďte dokumentačný koncový bod. Ak vynecháte hodnoty za názvami --build-arg, prevezmú sa z prostredia tohto volania. Zodpovedajúce deklarácie ARG nie sú pre tieto preddefinované vstupy potrebné.

Docker tieto proxy argumenty predvolene vylučuje zo spracovania build cache a z docker history. Ak na ne v Dockerfile výslovne odkážete, toto správanie sa zmení, preto nepridávajte deklarácie len preto, že to robí iný príklad argumentu buildu.

Proces tieto hodnoty stále dostane. Overený URL môže uniknúť cez vypísané prostredie, záznamy, skopírovanú konfiguráciu alebo neskoršie operácie s imageom, aj keď ho jedno zobrazenie histórie vynechá. ENV v Dockerfile robí z trasy súčasť prostredia výsledného imageu a môže z proxy používanej len pri builde urobiť závislosť každého kontajnera.

Keď príkaz potrebuje citlivý materiál, tajné pripojenia BuildKit poskytujú rozhranie pre tajomstvá v čase buildu. Obmedzte prihlasovací údaj na túto operáciu; nevypisujte pripojenie ani nekopírujte jeho obsah do vrstvy imageu.

Tieto vstupy buildu nekonefigurujú ani skoršie stiahnutie z registra, ktoré vykonal démon ani hostiteľskú trasu nedostupného vzdialeného buildera. Potom skontrolujte zamýšľaný výsledný image a konfiguráciu aplikácie na trvalé proxy hodnoty, namiesto predpokladu, že spracovanie dočasných vstupov odstránilo všetky kópie.

Súvisiace články