본문 바로가기
프로그래밍 언어(Programming Languages)/파이썬(Python)

[Python] Virtual Environment 마스터하기

by 데이터 벌집 2023. 11. 12.

Virtual Environment 마스터하기

 

📦 일반적인 경우

 

Python 프로젝트를 진행하다 보면, 서로 다른 의존성 때문에 때때로 프로젝트 간에 충돌이 일어날 수 있어요. 마치 한 개의 지저분한 공구함에 모든 도구를 넣어두는 것과 같죠. Python 개발자라면 누구나 한 번쯤 겪어본 시나리오일 거예요. 하나의 프로젝트에 패키지를 설치하면 다른 프로젝트와 충돌이 나서 갖가지 오류와 머리 아픈 문제를 만들어내죠.

 

🛠️ 프로 트릭: 가상환경 등장

 

가상환경은 Python 개발자들의 구세주와 같아요. 각 프로젝트마다 독립된 환경을 만들어주니, 마치 각기 다른 작업을 위한 별도의 공구함을 갖는 것처럼 편리해요. 이렇게 하면 한 프로젝트에 패키지를 설치하더라도 다른 프로젝트에는 전혀 영향을 주지 않으니 걱정 없겠죠!

 

가상환경을 사용하는 방법은 이렇습니다: 

 

1️⃣ 가상환경 설치: 아직 가상환경을 설치하지 않았다면, pip install virtualenv 명령어로 설치해 주세요.

2️⃣ 가상환경 생성: virtualenv my_project_env 명령어로 프로젝트 가상환경을 생성해요.

3️⃣ 가상환경 활성화: source my_project_env/bin/activate 명령어로 가상환경을 활성화하고 사용을 시작하세요.

4️⃣ 프로젝트 요구 사항 설치: 필요한 패키지들은 pip install my_project_requirements 명령어로 설치합니다.

5️⃣ 가상환경 비활성화: 작업이 끝나면 deactivate 명령어로 가상환경을 비활성화하세요.

 

 

# 가상환경 설치
# 만약 가상환경이 설치되어 있지 않다면, pip를 사용해 가상환경(virtualenv)을 설치합니다.
pip install virtualenv

# 가상환경 생성
# 'my_project_env'라는 이름의 가상환경을 프로젝트 디렉토리에 생성합니다.
virtualenv my_project_env

# 가상환경 활성화
# 가상환경 'my_project_env'를 활성화하여 사용을 시작합니다.
source my_project_env/bin/activate

# 프로젝트 요구 사항 설치
# 프로젝트에 필요한 패키지들을 설치합니다. 'my_project_requirements'는 필요한 패키지 목록이 담긴 파일명 혹은 패키지 목록 자체를 의미합니다.
# 요구 사항이 담긴 파일(예: requirements.txt)이 있는 경우, 아래 명령어를 사용합니다.
pip install -r my_project_requirements

# 가상환경 비활성화
# 프로젝트 작업을 마친 후, 가상환경을 비활성화합니다.
deactivate

 

 

🎉 가상환경 사용의 이점

  • 🛡️ 의존성 충돌 방지: 각 프로젝트의 의존성을 격리해 다른 프로젝트에 영향을 주지 않아요.
  • 🧹 시스템 정리 유지: 전역에 패키지를 설치하지 않으므로 시스템이 깔끔해요.
  • 🔄 프로젝트 공유 용이: 가상환경 덕분에 다른 사람과 프로젝트를 공유하기가 한결 쉬워져요. 추가 패키지 설치 걱정 끝!

가상환경을 사용해보면 이전 방법을 왜 썼는지 의문이 들 정도예요. Python 개발자의 필수 툴킷이죠! 

 

📝 추가 팁

  • 각 프로젝트마다 별도의 가상환경을 생성해요
  • pip freeze로 가상환경에 설치된 패키지 목록을 만들 수 있어요.
  • requirements.txt에 나열된 패키지를 설치하려면 pip install -r requirements.txt 명령을 사용하세요.

 

 

이 팁들을 활용하면 여러분도 가상환경 마스터가 될 수 있어요!