참고사항: 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 |