
я используюapt-cache-ngкоторый действует как прокси-сервер между моей сборкой Docker и сервером пакетов apt, поэтому все мои загрузки apt-get
кэшируются.
Я хотел бы сделать что-то подобное для файлов, которые я wget
. Например, чтобы установить последнюю версию scala, я не могу получить ее из apt и мне нужно установить ее из .deb
файла, загруженного с их сайта.
Есть ли простой способ кэшировать вызовы wget (возможно, все вызовы HTTP(S), выполняемые для загрузки файлов), когда я выполняю сборку с помощью Docker?
решение1
wget поддерживает переменные HTTP_PROXY и HTTPS_PROXY (https://stackoverflow.com/a/18722273/4124767). Сборка docker поддерживает установку этих переменных с помощью docker build --build-arg HTTP_PROXY=http://my.proxy:8080
:https://docs.docker.com/engine/reference/builder/#predefined-args
Не уверен, какой прокси использовать. Squid? ...
возможно, squid в сочетании с apt-cacher будет интересен:https://www.porcheron.info/bandwith-optimization-squid-apt-cacher-and-jesred/