참고사항: python3.3부터는 venv를 공식지원하므로 가능하면 venv사용을 먼저 고려하는게 좋음

 

virtual environment가 필요한 이유

이거 없으면, 한 PC에서 여러프로젝트 운영할려고 할때 꼬임

프로젝트마다 python2, python3사용여부가 다르거나, 필요한 라이브러리 버전이 다르거나 할 때, 

여러개의 파이썬 프로젝트가 하나의 컴퓨터에서 충동을 일으키지 않고 존재할 수 있도록 도와줌

 

virtual environment 동작 원리

여기서 환경이란 파이썬 프로그램을 실행시키는데 필요한 모든것의 복사본을 가지고 있는 단순한 폴더입니다. 

전체 파이썬 스탠다드 라이브러리 복사본, pip 설치 프로그램 복사본, 그리고 site-packages 복사본 등을 포함. 

pip install을 사용하면, virtualenv 폴더 내부의 site-packages 폴더에 이를 설치합니다. 

 

virtualenv 설치하기

# sudo pip3 install virtualenv virtualenvwrapper

pip와 virtualenv는 일반적으로 글로벌 설치가 되어야하는 유일한 패키지입니다. 

이 두개를 설치하고 나면 나머지 패키지들은 가상 환경에 설치하면 되기 때문입니다.

virtualenvwrapper는 virtualenv를 사용하기 쉽게 만들어주는 추가 툴이라고 보면 됨

 

virtualenvwrapper를 위한 추가 설정

여기가 약간 골때림 1회성작업이긴 하지만, ~/.bashrc에 다음 5줄을 추가해주고 source ~/.bashrc해줘야 mkvirtualenv 커맨드가 먹음

virtualenvwrapper를 사용하지 않아도 가상환경사용은 가능하지만, 사용하기 직관적이지 않아 비추

 

export WORKON_HOME=~/.virtualenvs
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python
export VIRTUALENVWRAPPER_VIRTUALENV=/usr/local/bin/virtualenv
source /usr/local/bin/virtualenvwrapper.sh
export VIRTUALENVWRAPPER_ENV_BIN_DIR=bin

 

위 과정에서 no module named virtualenvwrapper 라는 오류가 나면 위의 sudo pip3 를 sudo pip로 해서 다시해본다.

혹은 sudo ln -sf /usr/bin/python3 /usr/bin/python 으로 기본 python 버전을 2에서 3으로 바꿔준다.

python3를 사용하는 virtual environment 만들기

프로젝트 루트 폴더(예를 들면 ~/workspace)로 이동후 아래처럼 하면 python3를 기본으로 하는 env라는 이름의 virtual environment가 만들어 진다.

# mkvirtualenv -p python3 env_name

이렇게 하면 ~/.virtualenv/env_name 여기에 환경이 만들어진다.

지울때는 rmvirtualenv env_name 하면 된다.

 

 

virtual environment에 진입하기

# workon env_name (coin) #

빠져 나올때는 deactivate 하면 된다.

 

requirements.txt관련해서는 여기참조

 

numpy에러나면 다음 명령어 수행(라즈베리파이의 경우)

sudo apt-get install libatlas-base-dev

 

반응형

'Programming > Python' 카테고리의 다른 글

Anaconda & Jupyter  (0) 2018.03.23
python numpy  (0) 2018.02.28
python에서 doxygen 사용해보기  (0) 2017.11.14
python import  (0) 2017.11.14
python 시간관련 함수  (0) 2017.10.31

+ Recent posts