2014-07-15 2 views
2

네트워크상의 모든 컴퓨터에 대해 특정 파이썬 패키지를 캐시하거나 저장하는 방법을 찾으려고합니다. 나는 다음과 같은 솔루션을 살펴 했어 :파이썬 패키지 프록시/캐시

  • pypicache을하지만 더 이상 활발하게 개발되고 있으며, 저자가 devpi을 권장 여기를 참조 : https://bitbucket.org/micktwomey/pypicache/
  • proxypypi을하지만, 여기에 저자는 또한 devpi을 권장, 참조 : https://bitbucket.org/r1chardj0n3s/proxypypi
  • devpi -이 경우 quickstart guides 중 하나를 따라 갔지만 여기서는 localhost에서만 액세스 할 수 있으므로 permanent quickstart guide을 시도했습니다. 여기에 부품에 대한 확신이 없지만, 즉 :
    • virtualenv의 사용. 이것에 대한 추론은 설명되어 있지 않습니다. 왜 정상적으로 설치 될 수 없습니까? (왜 파이썬 패키지 도구가 아니라면 virtualenv를 사용합니까?)
    • 더 이상 사용되지 않는 설치 지침 (--gendeploy 사용). 대체 옵션이 없습니다, 그냥 무시합니까? 그것은 중요해 보입니다.
    • 왜 관리자가 필요합니까?
  • 그래서 나는 설정에 매우 쉬웠다 pypiserver 봐,로 결정하고, 나는 -i 옵션을 사용 핍 말할 수 있지만, 어떤 패키지를 캐시하는 것 같지 않습니다. pypiserver를 중지하면 pip install이 연결될 수 없으므로 실패합니다. 따라서 사용 중이어야합니다. 그것은 어떤 패키지도 저장하지 않는 것을 제외하고. 내 최고의 추측은 단지 요청을 프록시하고 다운로드를 캐싱하지 않는다는 것입니다.

표준 방법이 있습니까? 내 목표는 인터넷 연결이 끊어 지거나 패키지가 제거되지 않도록 보호하여 네트워크의 클라이언트가 개발 또는 프로덕션 시스템을 설치하거나 개발 또는 프로덕션 시스템 설정 속도를 높일 수 있도록 설정하는 것입니다.

나는 모두 devpipypiserver이 좋은 옵션이라고 생각하는데, 나는 그 (것)들을 만들기 위하여 무언가를 놓치는 것처럼 보인다.

EDIT : 정확히 pypiserver에 대한 정확한 내용으로 PyPI에 대한 프록시 요청입니다. 자신의 패키지를 업로드하기위한 것이므로 pypiserver에서 다운로드 할 수 있지만 공식 패키지를 찾고 있다면 PyPI에서 가져올 수 있습니다.

답변

1

며칠 전에 새로운 버전의 Devpi가 출시되었습니다. The latest documentation이 내 모든 문제를 해결했으며 devpi-server 2.0.1을 사용하기로 결정했습니다. Devpi는 PyPI 패키지 용 캐싱 프록시를 제공 할뿐만 아니라 devpi-client을 사용하여 사용자 정의 패키지를 업로드 할 수 있습니다. 이 기능이 필요하지 않으므로 here과 같이 root/pypi 색인을 사용하고 있습니다. 내가 this page에 관한 지시를 따라 가면서 devpi-client에 관한 마지막 부분을 뺀다.