ForFour

Python 가상환경 본문

Python

Python 가상환경

for_four 2021. 1. 13. 02:11

 

 

가상환경 virtualenv

python의 가상환경을 만들어주는 라이브러리들이 몇 가지 있지만 그 중 가장 유명하고 쓰기 편한 virtualenv와 virtualenvwrapper를 사용하기로 합니다. 추가적인 라이브러리에 대한 정보는 다음 스택오버플로우에 잘 설명되어 있습니다.

python - What is the difference between venv, pyvenv, pyenv, virtualenv, virtualenvwrapper, pipenv, etc? - Stack Overflow

 

 

virtualenv & virtualenvwrapper

처음에 venv를 사용할 때는 오히려 귀찮았습니다. 

내가 왜 사용해야 하는지도 잘 모르겠고 간간히 사용은 하고 있지만 전혀 익숙해지지 않고 효율성에 대한 의문만 있었습니다. 그러다 점점 프로젝트를 분리해야겠다는 생각을 했고 사용하는 김에 한 번 간단하게 정리를 해보려고 합니다.

virtualenv는 환경을 독립적으로 생성해주는 라이브러리이고, virtualenvwrapper는 가상환경을 조금 더 편리하게 이용할 수 있도록 해주는 툴입니다. 간단하게 명령어를 통해 설치하고 사용하는 과정을 통해 추가로 설명하겠습니다.

 

 

설치

아래의 명령어를 통해 두 개의 패키지를 모두 설치할 수 있습니다. 애초에 virtualenvwrapper를 사용하기 위해서는 virualevn가 필요하기 때문에 아래의 명령어를 입력하면 의존성 검사를 통해 자동으로 설치됩니다. $ sudo pip install virtualenvwrapper

 

설치

Virtualenvwrapper를 사용하지 않고 virtualenv만 사용한다면 매번 `$ source venv/bin/activate` 명령어를 통해 가상환경을 실행시켜 주어야 합니다. 

 

하지만 다음의 환경변수 설정을 통해 virtualenvwrapper를 설정하면 조금 더 편리하게 가상환경을 사용할 수 있습니다

 

bash shell을 사용한다면 $HOME(~)에서 `ls -la` 명령어로 .bashrc 혹은 .bash_profile을 확인한 뒤에 텍스트 에디터(vim etc..)로 .bashrc 파일을 연 후 맨 밑에 다음의 세 문장을 입력하면 됩니다. 

```
export WORKON_HOME=~/.virtualenvs
export VIRTUALENVWRAPPER_PYTHON=‘파이썬의 경로’  # Usage of python3
source /usr/local/bin/virtualenvwrapper.sh
```

Mac 환경에서는 설정이 아래와 같이 되어 있어 필요에 맡게 위의 문장을 추가하면 됩니다.

  • /etc/bashrc (모든 사용자에게 적용되는 Configuration)
  • ~/.bash_profile (현재 접속된 사용자에게만 적용되는 Configuration)

환경변수 설정을 마친 뒤 터미널을 종료했다가 다시 실행 시키면 virtualenvwrapper를 사용할 수 있습니다.

 

 

실행하기

이제 가상환경을 생성하고 환경을 활성화하여 프로젝트를 분리하면 됩니다. virtualenvwrapper에서 자주 쓰는 명령어를 알아보겠습니다.

 

가상환경 생성하기

 `$ mkvirtualenv venv_name`

 

가상환경 확인하기

`workon`

 

가상환경 진입하기

` $ workon venv_name `

 

가상환경 빠져나오기

` $ deactivate `

 

가상환경 삭제하기

`$ rmvirtualenv venv_name`

 

 

 

 

 

 

참고

virtualenvwrapper.readthedocs.io/en/latest/command_ref.html

docs.python-guide.org/dev/virtualenvs/

hidekuma.github.io/python/virtualenv/virtualenvwrapper/python-virtualenv-wrapper/

blog.naver.com/ez_/140138625021

somjang.tistory.com/entry/Pythonvirtualenv-virtualenvwrapper-%EC%84%A4%EC%B9%98-%EB%B0%8F-%EC%82%AC%EC%9A%A9%EB%B2%95Ubuntu

blog.pigno.se/post/130756784138/mac-%EC%9C%A0%EC%A0%80%EB%A5%BC-%EC%9C%84%ED%95%9C-alias-%EC%84%A4%EC%A0%95

macinjune.com/all-posts/mac/terminal/%EB%A7%A5-%ED%84%B0%EB%AF%B8%EB%84%90%EC%97%90%EC%84%9C-shell-customization%ED%95%98%EA%B8%B0-%EC%89%98-%ED%99%98%EA%B2%BD-%EA%B5%AC%EC%B6%95/

 

 

Comments