Programming/Python

파이썬 가상환경(virtualenv, venv)

알로그 2020. 2. 29. 11:50
반응형

파이썬 가상환경(virtualenv, venv)

 

파이썬으로 개발하는 경우 pip를 이용하여 다양한 패키지들을 설치하게 된다.

로컬에서 pip로 설치하면 파이썬 설치폴더 내부에 package 관리하는 폴더에 저장하게 되고, 이는 로컬에서 사용하는 모든 스크립트에서 사용된다.

 

하지만 여러개의 프로젝트를 개발하는 경우, 같은 패키지가 필요하지만 다른 버전을 개발해야 하는 경우 패키지 충돌이 날 수 있다. (예. 1번 프로젝트에서 A 패키지 1.1버전, 2번 프로젝트에서 A 패키지 1.2버전이 필요한 경우)

이를 해결하기 위해 파이썬에서 가상환경을 사용할 수 있는데, 가장 많이 사용되는 방법이 virtualenvvenv 이다.

 

먼저 virtualenv를 사용하는 방법을 알아보자.

먼저 pip를 이용하여 virtualenv를 설치하자.

$ pip install virtualenv

 

설치하고 나서 virtualenv 명령어와 생성할 가상환경명(아래 이미지에선 VENV)를 입력하면 아래와 같이 VENV폴더가 생성된다.

다음으로 이를 활성화하기 위해 폴더 내부에 Scripts 폴더로 들어가서 activate라는 명령어를 입력하면 활성화를 할 수 있다.

할성화가 되었는지 확인하는 방법은 가장 마지막 줄, 첫 시작이 (VENV)로 직접 지정한 가상환경으로 바뀌었음을 확인할 수 있다.

 

가상환경으로 활성화한 다음에 pip를 이용하여 패키지를 설치하면, 해당 패키지는 VENV 가상환경 내에서만 유효하며 다른 환경에서는 유효하지 않다.

 

항상 개발을 시작할 때, 가상환경을 세팅하고 개발을 시작하는 것이 좋다.

추후 여러 사람들이 개발을 하게 되면 패키지 의존성 문제가 많이 발생할 수 있으므로 프로젝트 개발에 필요한 패키지들을 묶어서 같이 배포하는데, 필요 없는 패키지들도 묶일 수 있기 때문에 신경 써 줘야한다.

 

파이썬 venv는 이미 파이썬3에 내장되어 있기 때문에 설치할 필요없이 바로 사용할 수 있다.

아래 명령어로 가상환경을 세팅하고 마찬가지로 ENV/Scripts 폴더로 들어가서 activate 명령어를 입력하면 가상환경으로 활성화된다.

$ python -m venv ENV(가상환경 파일명)
반응형

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

파이썬 requirement.txt로 pip 패키지 관리  (0) 2020.11.29
파이썬 pickle 모듈  (0) 2020.11.11
파이썬 알고리즘 명령어 팁  (0) 2020.03.08
파이썬 JSON 모듈  (1) 2020.01.11
파이썬 윈도우 자동화 - pywinauto  (0) 2018.07.18