Espelhos e caches de índice de pacotes¶
- Status da página:
Incompleta
- Última revisão:
2023-11-08
O espelhamento ou cache do PyPI (e outros índices de pacotes) pode ser usado para acelerar a instalação do pacote local, permitir o trabalho offline, lidar com firewalls corporativos ou simplesmente falhas na Internet.
Existem várias classes de opções nesta área:
fazer cache local/hospedado de índices de pacotes.
fazer espelhamento local/hospedado de um índice de pacotes. Um espelho é uma cópia (total ou parcial) de um índice de pacotes, que pode ser usado no lugar do índice original.
índice de pacotes privados com alternativa para os índices de pacotes públicos (por exemplo, para mitigar ataques de confusão de dependência), também conhecido como proxy.
Fazendo cache com pip¶
pip fornece uma série de facilidades para acelerar a instalação usando cópias locais em cache de pacotes:
Instalações rápidas e locais baixando todos os requisitos para um projeto e apontando pip para esses arquivos baixados em vez de ir para PyPI.
Uma variação da acima, que pré-constrói os arquivos de instalação para os requisitos usando python3 -m pip wheel:
python3 -m pip wheel --wheel-dir=/tmp/wheelhouse SomeProject python3 -m pip install --no-index --find-links=/tmp/wheelhouse SomeProject
Projetos existentes¶
Projeto |
Cache |
Espelho |
Proxy |
Notas adicionais |
|---|---|---|---|---|
✔ |
✔ |
múltiplos índices com herança; sincronização, replicação, tolerância a falhas; envio de pacote |
||
✔ |
✔ |
|||
✔ |
plugin personalizado permite fazer cache; redirecionamento para outros índices de pacotes |
|||
✔ |
✔ |
sem manutenção; autenticação, autorização |
||
✔ |
✔ |
plugin para Pulp; vários índices proxy; envio de pacote |
||
✔ |
✔ |
múltiplos índices sob proxy |
||
✔ |
✔ |
múltiplos índices sob proxy |
||
✔ |
✔ |
sem manutenção |
||
✔ |
✔ |
usando mod_rewrite e mod_cache_disk, você pode armazenar em cache as solicitações para índices de pacotes por meio de um servidor Apache |