Espelhos e caches de índice de pacotes¶
- Status da página
Incompleta
- Última revisão
2014-12-24
O espelhamento ou cache do PyPI pode ser usado para acelerar a instalação do pacote local, permitir o trabalho offline, lidar com firewalls corporativos ou simplesmente falhas na Internet.
Três opções estão disponíveis nesta área:
pip fornece opções de cache local,
devpi fornece uma opção de cache de alto nível, potencialmente compartilhada entre vários usuários ou várias máquinas, e
bandersnatch fornece um espelho local completo de todos os pacotes do PyPI.
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
Fazendo cache com devpi¶
devpi é um servidor proxy de cache que você executa em seu laptop ou alguma outra máquina que você sabe que sempre estará disponível para você. Veja a documentação do devpi para começar.
Espelho completo com bandersnatch¶
bandersnatch irá configurar um espelho local completo de todos os pacotes do PyPI (pacotes hospedados externamente não são espelhados). Veja a documentação do bandersnatch para fazer isso.
Um benefício do devpi é que ele criará um espelho que inclui pacotes que são externos ao PyPI, ao contrário do bandersnatch que armazenará apenas em cache os pacotes hospedados no PyPI.