Python

[CentOS 7] virtualenv 설치 및 사용

비번변경 2021. 6. 25. 19:46
virtualenv
격리된 가상 python 환경을 만들기 위한 도구

 

 가상 python 환경이란 시스템 상에 설치되어 있는 python 환경은 그대로 두고, 작은 python을 새로 설치하여 필요한 python 모듈만 운영하는 환경이다. 가상 머신과 비슷하게 생각하면 된다.

 하나의 모듈의 다른 버전이 필요하거나 서로 다른 모듈끼리의 충돌이 발생할 경우, 설치할 모듈로 인해 기존 서비스에 영향이 가지 않도록 하기 위해 사용한다.

 

설치 방법

 python3와 pip3가 필요하다. 설치되어 있지 않으면 아래 명령어로 설치하도록 한다.

yum install python3
yum install python3-pip

 설치엔 root 권한이 필요하다. 설치를 해봤다면 잘 설치가 되었는지 버전을 확인해본다.

python3 --version
pip3 --version

python3 --version

 python3와 pip3 둘 다 설치가 되었다면 이제 virtualenv를 설치한다. 마찬가지로 root 권한이 필요하다.

pip3 install virtualenv

virtualenv --version

 

가상 환경 생성

 virtualenv를 설치했으면, 이제 가상 python 환경을 만들 수 있다.

virtualenv <ENV_NAME>

# 예시
virtualenv test_env

virtualenv 생성

 

가상 환경 시작

 성공적으로 가상 환경이 만들어졌으면, 지정된 경로에 가상 환경의 이름과 동일한 디렉터리가 만들어진다. 예시에서는 홈 디렉터리에서 별도로 경로를 지정하지 않아서 홈 디렉터리에 생성되었다.

 아래 명령어로 만들어진 가상 환경을 동작시킨다.

source <ENV_PATH>/bin/activate

가상 환경 활성화

 가상 환경이 동작 중일 때는 터미널의 앞에 가상 환경의 이름을 계속 표시해준다.

 

가상 환경 종료

 동작 중인 가상 환경은 deactivate 명령어로 종료시킬 수 있다.

deactivate

가상 환경 비활성화

 가상 환경이 종료되어 터미널 창에 표시되던 가상 환경 이름이 없어진 것을 볼 수 있다.

 

가상 환경 삭제

 만든 가상 환경은 일반 디렉터리 삭제하는 것과 동일하게 삭제하면 된다.

rm -rf <ENV_PATH>

 

가상 환경 내 python 확인

 which 명령어로 확인한 결과, 시스템 상에 설치된 파이썬 경로는 아래 사진과 같다.

 

python 경로 확인

 그렇다면 가상 환경이 동작할 때 실행시키는 파이썬은 어디에 설치되어 있을까? 

which python

가상 환경 python 경로 확인

동일하게 which 명령어로 확인한 결과, 만들어진 가상 환경 디렉터리의 bin 아래에 설치되어 있는 python을 실행시킨다는 것을 알 수 있다.

 

가상 환경 경로 확인