파이썬에서 가상 환경(virtual environment)은 하나의 PC에서 프로젝트 별로 독룁된 파이썬 실행 환경(runtime/interpreter)을 사용할 수 있도록 해줍니다. 가상 환경을 사용하지 않으면 PC 내의 모든 프로젝트에서 운영체제에 설치된 하나의 파이썬 런타임을 사용하게 되고 동일한 위치에 외부 패키지를 설치하고 서로 공유하게 됩니다. 이럴 경우, 하나의 프로젝트에서 설치한 패키지의 버전이 다른 프로젝트에서 설치한 동일
패키지의 다른 버전과 충동을 일으킬 소지가 생기기 때문에, 프로젝트 별로 독립된 가상 환경을 구성하여 사용하는 것이 권장됩니다. 파이썬에서 외부 패키지를 설치할 때는 일반적으로 파이썬 2에서는 가상 환경을 구성할 프로젝트 디렉터리에 들어가서 아래와 같이 커맨드를 날리면 가상 환경을 굳이 Git과 같은 소스 버전 관리 시스템에 올릴 필요는 없으므로
가상 환경 활성화가상 환경을 활성화 하기 위해서
이제
가상 환경에서 제공하는 파이썬의 버전은 다음과 같이 확인할 수 있습니다.
가상 환경에 패키지 설치가상 환경이 활성화된 상태에서 패키지를 설치하면,
가상 환경 비활성화가상 환경을 빠져나올 떄는 터밀널에
마치면서이상으로 파이썬에 기본 내장된 Python의 virtualenv는 어플리케이션별로 독립된 가상 환경을 사용할 수 있게 해줍니다. 어플리케이션별로 독립된 가상 환경이 왜 필요할까?예를 들어보겠습니다. 하나의 PC 혹은 서버 환경에서 어떤 어플리케이션은 버전 1의 라이브러리를 필요로 하고, 다른 어플리케이션은 버전 2의 라이브러리를 필요로 한다면, 어떻게 이 두 라이브러리를 관리할 수 있을까요? Host 파이썬에 각각 다른 두 패키지를 설치하려고 한다면 당연히 conflict가 발생할 것입니다. 혹은, 잘 작동하고 있는 특정 어플리케이션의 환경을 그대로 유지하고 싶은 경우를 생각해봅시다. 해당 프로그램에서 쓰고 있는 라이브러리의 버전의 변경이 Host 머신에서 일어난다면, 그동안 잘 돌던 프로그램에서 장애를 일으킬 수도 있습니다. 위와
같은 모든 케이스를 해결해주는 것이 virtualenv입니다. virtualenv 설정하기
python3 -m pip install --user -U virtualenv 2. 독립된 파이썬 환경 만들기 3. 가상 환경 활성화 3. 가상 환경 내 패키지 설치 4. 가상 환경 비활성화 virtualenv vs venvvirtualenv와 venv의
차이는 뭘까요? 다만 작은 차이들은 있습니다.
Refrenceshttps://virtualenv.pypa.io/en/latest/ |