PIP_DOWNLOAD_CACHE имеет несколько серьезных проблем.Самое главное, он кодирует имя хоста загрузки в кеш, поэтому использование зеркал становится невозможным.
Лучший способ управлять кэшем загрузок в пипсах - это отделить этап «загрузить пакет» от шага «установить пакет».Загруженные файлы обычно называются «файлами sdist» (исходные коды), и я собираюсь хранить их в каталоге $ SDIST_CACHE.
Два шага заканчиваются следующим образом:
pip install --no-install --use-mirrors -I --download=$SDIST_CACHE <package name>
, который загрузит пакет и поместит его в каталог, указанный $ SDIST_CACHE.Это не установит пакет.И тогда вы запускаете:
pip install --find-links=file://$SDIST_CACHE --no-index --index-url=file:///dev/null <package name>
Чтобы установить пакет в вашу виртуальную среду.В идеале, $ SDIST_CACHE будет зафиксирован под вашим контролем источника.При развертывании в производство вы должны запустить только вторую команду pip, чтобы установить пакеты без их загрузки.