2010-01-25

virtualenv

준비물

  • xcode : node 와 virtualenv 설치시 필요함
  • PIP : easy_install 을 대체할 파이썬 패키지 매니저
curl http://python-distribute.org/distribute_setup.py | sudo python
curl https://raw.github.com/pypa/pip/master/contrib/get-pip.py | sudo python
  • virtualenv virtualenvwrapper : 파이썬 개발 환경(파이썬 버전 및 각종 라이브러리)을 가상화할 수 있게 해주는 도구
sudo pip install virtualenv virtualenvwrapper

virtualenv 설정

집과 회사를 오가며 개발하다보면, 파이썬 버전과 각종 라이브러리의 설치 및 충돌 문제 때문에 괴로울 때가 많다. 파이썬 라이브러리들은 파이썬 버전별로 site-packages 에 복사되기 때문에, 개발 환경이 살짝만 바뀌어도 관리자 권한으로 재설치를 해야 한다. virtualenv 는 node 의 nvm, ruby의 rvm처럼 각 개인의 홈에 가상적인 파이썬 환경을 만들고 라이브러리를 설치해서 사용할 수 있게 해주며, virtualenvwrapper 는 좀더 간편한 명령들을 제공해준다. (왜 pvm이라고 안하는지 모르겠다..)

일단 ~/.bash_profile 에 아래 내용을 추가해서 로그인할 때마다 실행되도록 하자.

export WORKON_HOME=~/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh

이제 저장한 후 source ~/.bash_profile 하면, 관련 명령을 실행할 준비가 된 셈이다.

mkdir -p $WORKON_HOME
mkvirtualenv warcloud
echo 'cd ~/Documents/Works/warclouds' >> $WORKON_HOME/warcloud/bin/postactivate

가상환경을 저장할 폴더를 만들고, warcloud 라는 개발환경과 이 명령을 실행할 때 자동으로 실행할 명령도 추가하자.

workon warcloud

이걸 실행하면, 이제 관련 폴더로 자동 이동이 된다.

virtualenvwrapper 에서 제공하는 명령을 간단히 살펴보자.

  • workon {env} : 특정 가상 환경을 실행한다.
  • deactivate : 가상환경을 빠져나간다.
  • mkvirtualenv {env}
  • rmvirtualenv {env}
  • lsvirtualenv
  • showvirtualenv {env}
  • cpvirtualenv {src} {dest}
  • lssitepackages
  • add2virtualenv {dir} : PYTHONPATH 에 경로를 추가하기.
add2virtualenv /Users/reiot/Documents/Works/warclouds

comments powered by Disqus