PYPI가 다운되었을 때 Easy_Install 및 Buildout을 어떻게 사용합니까?
-
05-09-2019 - |
문제
나는 사용 중입니다 빌드 아웃 내 Plone 설치의 많은 종속성을 자동으로 다운로드하고 설정하려면 Buildout은 Easy_Install을 사용하여 많은 파이썬 달걀을 다운로드하여 설치합니다. 이것은 일반적으로 작동하지만 종속성을 다운로드 할 수 없거나 Buildout이 PYPI에 적합하지 않은 내부 패키지를 찾도록하려는 경우 작동하지 않습니다. 필요한 패키지를 자동으로 미러링하기 위해 내 자신의 로컬 버전의 PYPI를 설정하려면 어떻게해야합니까? 메타 데이터에 PYPI를 사용하지만 코드가 아닌 패키지의 타사 서버에 여전히 의존합니까?
해결책
여기에 있습니다 자신의 PYPI 미러를 설정하는 방법에 대한 지침. 이 프로젝트의 홈페이지는입니다 여기. 또한 점점 더 많은 거울이있는 것 같습니다.
자신의 패키지 색인 설정 방법에 대한 지침은 확인하십시오. 이 블로그 게시물 끝에 하나의 해결책이 설명되어 있습니다. 그런 다음 자신의 내부 패키지를 호스팅 할 수도 있습니다. 장점은 또한 버전이 그런 식으로 고정된다는 것입니다. (Buildout에서 버전을 직접 고정하는 방법은 확인하십시오. 이 게시물).
PYPI에 메타 데이터 만 있고 아카이브가 다른 곳에 저장된 경우 물론 색인에도 복사 할 수 있습니다. PYPI 미러 만 사용하는 경우에도 이러한 서버에 액세스 할 필요가 있다고 가정합니다.
다른 팁
거울을 사용할 수도 있습니다. 이것을 "~/.pip/pip.conf"의 [Global]섹션에 넣으십시오.
index-url = http://d.pypi.python.org/simple/
이것은 최근에 발표 된 기능입니다 여기.
이 페이지는 @Moraes Post에 언급 된 대체 미러를 사용하는 방법을 보여줍니다.
ZC의 경우 Buildout : 로컬 다운로드 캐싱 기능을 사용하십시오. 캐시해야 할 주로 세 가지가 있습니다.
- 외부 확장, 즉 http://dist.plone.org/release/4.1.2/versions.cfg
- 일부 Distserver의 계란, 즉 pypi
- zc.recipe.cmmi 또는 zc.buildout에서 제공하는 다운로드 인프라를 사용하여 유사한 레시피에서 다운로드
세 가지 모두 글로벌 구성을 조정하고 확장에 대한 캐시 폴더와 계란 및 기타 다운로드 용 캐시 폴더를 설정해야합니다.
홈 폴더에서 a .buildout
폴더.
이 폴더에서 폴더를 만듭니다 extends-cache
그리고 downloads
~ 안에 .buildout
다음과 같이 파일 기본값을 만듭니다.
[buildout]
extends-cache = /home/USERNAME/.buildout/extends-cache
download-cache = /home/USERNAME/.buildout/downloads
그래서 당신은 다음과 같습니다.
.buildout/
├── default.cfg
├── downloads
└── extends-cache
그게 다야. 특정 빌드 아웃에서 기본값 에서이 두 변수를 대체하지 마십시오. 빌드 아웃의 첫 실행 후 후속 실행이 오프라인 모드에서 실행됩니다. ./bin/buildout -o
.
오프라인 모드에서 사용하면 부작용 빌드 아웃이 훨씬 빠릅니다. 즉, 새로운 다운로드가 예상되지 않지만 일부 구성 변경이 변경되었습니다.
이것 외에도 자신의 pypi-mirror를 실행하는 것이 합리적입니다. 다른 정보의 소스로서 당신은 내가이 주제에 대해 얼마 전에 쓴 기사에 관심이있을 것입니다. http://bluedynamics.com/articles/jens/setup-z3c.pypimirror
구성 index
안에 buildout.cfg
, 예를 들어
[buildout]
index = http://a.pypi.python.org/
find-links =
더 많은 거울 : http://www.pypi-mirrors.org/
PYPI는 2010 년 중반부터 미러링을했습니다 http://pypi.python.org/mirrors
패키지의 경우, 당신이 당신의 virtualenv
보통 a requirements.txt
(또는 개별적으로있을 수 있음) pip.conf
일반적으로 위치한 파일 ~/.pip/pip.conf
당신의 pip.conf
파일:
[global]
index-url=https://pypi.python.org/simple/
[install]
trusted-host=pypi.python.org
여기에서 필요한 경우 자신의 커스텀 버전의 PYPI의 URL을 제공 할 수 있습니다.
생성하는 동안 다른 PYPI 서버를 사용하려면 virtualenv
~을 통해 easy_install
재정의해야합니다 pydistutils.cfg
일반적으로 파일에 있습니다 ~/pydistutils.cfg
~ 안에 pydistutils.cfg
파일:
[easy_install]
index-url=https://pypi.python.org/simple/
이것은 당신의 창조를 보장 할 것입니다 venv
언급 된 PYPI의 URL과 함께 pydistutils.cfg
. 여기, 우리는 말하고 있습니다 easy_install
사용 https://pypi.python.org/simple/ 창조를 위해 venvs
.