Python 가상 환경 - pyenv virtualenv 사용 안내

소개 하 다.
참고:http://vincentsfootprint.com/post/venv_virtualenv_pipenv_difference https://www.xncoding.com/2016/05/09/python/pyenv.html
virtualenv
독립 된 python libraries 환경 을 만 드 는 데 매우 유행 하 는 도구 입 니 다.나 는 당신 이 그것 을 배우 고 이해 하 는 것 을 강력 히 추천 합 니 다. 왜냐하면 그 는 매우 실 용적 이 고 응용 이 광범 위 하기 때문에 많은 사람들 이 그것 으로 python 개발 환경 을 구축 합 니 다.뒤의 다른 도 구 는 주로 virtualenv 와 비교 하여 차 이 를 설명 한다.
virtualenv 는 실행 가능 한 열 과 라 이브 러 리 파일 을 설치 한 다음 환경 변수 PATH 에서 실행 가능 한 파일 (bin 디 렉 터 리) 을 수정 합 니 다.환경 변수 PATH 앞 에 env / bin / 을 두 는 등 디 렉 터 리 의 우선 순 위 를 설정 합 니 다. 그리고 실행 가능 한 python 이나 python 3 파일 을 env / bin / 디 렉 터 리 에 두 고 python 이 실 행 될 때 경로 와 가 까 운 상대 디 렉 터 리 위 치 를 우선 검색 합 니 다. 그러면 virtualenv 가 만 든 libraries 디 렉 터 리 를 우선 사용 하 는 목적 을 달성 하고 activated 를 실행 합 니 다.virtualenv 환경 에 들 어가 면 pip 를 통 해 libraries 를 env / 환경 에 설치 할 수 있 습 니 다.
pyenv
python 버 전 을 관리 합 니 다. 독립 된 python 버 전 환경 을 만 드 는 데 사 용 됩 니 다.
pyenv 는 python 버 전 관리 입 니 다. 환경 변 수 를 수정 하 는 방식 으로 이 루어 집 니 다. 홈 페이지 설명 에 서 는 PATH 맨 앞 에 shims 를 삽입 하여 사용 할 python 버 전 을 결정 하고 명령 을 올 바른 python 프로그램 에 전달 합 니 다.
예 를 들 어 python 2.6, 2.7, 3.3, 3.4, 3.5 버 전에 서 코드 가 실행 되 는 지 각각 테스트 하려 면 pyenv 와 같은 도구 가 필요 합 니 다. pyenv 환경 을 활성화 하면 ~ / pyenv / shims 의 값 을 환경 변수 PATH 앞 에 놓 고 기본 python, pip 실행 가능 한 파일 디 렉 터 리 를 덮어 씁 니 다. c 가 아 닙 니 다.opy 실행 가능 한 파일 입 니 다. 일부 스 크 립 트 코드 를 통 해 PYEnV VERSION 이나. python - version 파일 을 기반 으로 python 프로그램 을 실행 할 수 있 는 파일 을 결정 합 니 다. 또한 pyenv install 을 통 해 여러 python 버 전 을 설치 할 수도 있 습 니 다.
pyenv-virtualenv
pyenv 작성 자 는 pyenv 를 위 한 플러그 인 입 니 다. 이 플러그 인 을 통 해 pyenv 와 virtualenv 를 편리 하 게 사용 할 수 있 습 니 다. 또한 python 3.3 이상 의 버 전 을 사용한다 면 virtualenv 대신 venv 를 사용 해 보 겠 습 니 다. 물론 pyenv 와 virtualenv 를 동시에 사용 할 수도 있 습 니 다. pyenv - virtualenv 를 직접 사용 하지 않 고 설정 할 수도 있 습 니 다.
virtualenvwrapper
virtualenv 의 일부 열 확장 입 니 다. mkvirtualenv, lssitepackages 등 명령 행 도 구 를 제공 합 니 다. 특히 워 크 온 명령 행 도 구 는 여러 개의 virtualenv 디 렉 터 리 를 사용 해 야 할 때 이 도 구 를 사용 하 는 것 이 매우 편리 합 니 다.
pyenv-virtualenvwrapper
pyenv 작성 자가 pyenv 에 쓴 또 다른 플러그 인 은 virtualenvwrapper 를 pyenv 로 쉽게 통합 할 수 있 습 니 다.
pipenv
requests 라 이브 러 리 의 작성 자 Kenneth Reitz 가 작성 한 도 구 는 Pipfile, pip, virtualenv 를 같은 명령 행 도구 에 통합 하 는 것 이 목표 입 니 다. 실제 사용 중인 nodejs 와 같은 의존 패키지 관리 도구 npm 입 니 다.
1. pip 설치
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python get-pip.py

2. pyenv 설치
참고:https://github.com/pyenv/pyenv/blob/master/README.md#installation
2.1 설치 의존:
yum -y install wget gcc epel-release git

yum -y install bzip2-devel bzip2-libs

yum -y install openssl openssl-devel openssl-static

yum -y install sqlite-devel

yum -y install readline readline-devel readline-static

2.2 pyenv 설치:
git clone https://github.com/pyenv/pyenv.git ~/.pyenv

         :
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile
echo -e 'if command -v pyenv 1>/dev/null 2>&1; then
eval "$(pyenv init -)"
fi'
>> ~/.bash_profile shell, : exec "$SHELL" pyenv pyenv : pyenv --help : pyenv versions # python pyenv version # python pyenv install -v 3.5.3 # python pyenv uninstall 2.7.13 # python pyenv rehash # ( :~/.pyenv/versions/bin/) shims, Python ( pip) , )

2.3 $PYEnV ROOT / versions 경로 로 Python 버 전 을 설치 합 니 다.
pyenv install -l #         

pyenv install -v 3.6.1

pyenv rehash

   1:       
    bash: pyenv:      
  :
    source ~/.bash_profile

   2:    
      :WARNING: The Python bz2 extension was not compiled. Missing the bzip2 lib?
  :
            

        ...

      :
    pyenv uninstall 3.6.1

     pyenv              ,            *   :
[root@usceth-eth-1 AAA]# pyenv versions
* system (set by /root/.pyenv/version)
3.6.1

2.4 환경 전환
    python  ,   ~/.pyenv/versions/
pyenv virtualenv 3.6.1 env361

    :
pyenv activate env361

    : 
pyenv deactivate

    :
$ rm -rf ~/.pyenv/versions/env361/

2.5 버 전 전환
pyenv global 3.5.3 #      Python  ,        ~/.pyenv/version     
pyenv local 2.7.13 #            ,              .python-version     。          Python      global 。
pyenv shell 2.7.13 #     shell Python  ,      shell PYENV_VERSION       
   : shell > local > global

2.6 pyenv 마 운 트 해제
  pyenv   ,    ~/.bash_profile  pyenv init      。
    pyenv,      1 ,    pyenv    : rm -rf $(pyenv root)

3. 플러그 인 pyenv - virtualenv
참고:https://github.com/pyenv/pyenv-virtualenv
pyenv 를 사용 하여 다 중 버 전의 python 명령 을 관리 하고 pyenv - virtualenv 플러그 인 을 사용 하여 다 중 버 전의 python 패키지 환경 을 관리 합 니 다.
3.1 설치:
git clone https://github.com/pyenv/pyenv-virtualenv.git $(pyenv root)/plugins/pyenv-virtualenv
echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.bash_profile

  shell  :
exec "$SHELL"

  eval "$(pyenv virtualenv-init -)"    shell   (     ~/.bash_profile),    pyenv-virtualenv  /      .python-version        /      。

3.2 상용 명령:
      : pyenv virtualenv 2.7.13 virtual-env-2.7.13,        python  。     $(pyenv root)/versions/my-virtual-env-2.7.13       Python 2.7.13     。
      : pyenv virtualenvs,   virtualenv  2 ,        ,  *       。
      : pyenv activate virtual-env-2.7.13
      : pyenv deactivate
      : pyenv uninstall virtual-env-2.7.13

3.3 장면 사용 절차:
#      Python  
pyenv versions

          
[root@tingyun_server opt]# pyenv virtualenvs
3.6.1/envs/venv36 (created from /root/.pyenv/versions/3.6.1)
venv36 (created from /root/.pyenv/versions/3.6.1)

#          
pyenv virtualenv 3.6.1 virtual-env-3.6.1

#         /opt/demo,  local python   
pyenv local virtual-env-3.6.1

#             

좋은 웹페이지 즐겨찾기