반응형
파이썬 프로젝트를 conda 환경으로 관리하는 경우가 많지만,
때로는 pipenv로 가상 환경을 다루는 것이 큰 이점을 가져다주는 경우도 있습니다.
이번 글에서는 아주 간략하고 쉽게 pipenv의 특징과 장점 및
기본적인 명령어 몇 가지를 정리해보도록 하겠습니다.
pipenv 특징 및 장점
pipenv가 conda와 구분되는 특징 중 가장 대표적인 내용은 다음과 같습니다.
- 디렉토리마다 가상 환경을 별도로 두는 것이 특징입니다.(한 가상 환경을 여러 프로젝트가 공유할 수 있는 conda와는 대비되는 특징입니다.)
- dev 버전에서만 필요한 의존성을 별도로 두고 관리할 수 있습니다.
- 패키지 버전 의존성을 관리하고 쉽게 배포 가능합니다.(Pipfile 및 Pipfile.lock 파일들로 관리됩니다.)
이 외에도 패키지 간 의존 관계 시각화, 편리한 환경 변수 관리 및 간편한 패키지 업데이트 방법
등도 추가적인 pipenv의 특징 및 장점이 될 수 있습니다.
반응형
pipenv 명령어
이제 터미널 상에서 pipenv로 가상 환경을 관리할 수 있는 대표적인 명령어를
몇 가지 정리해보도록 하겠습니다.
1. pipenv 설치(미설치 시 초기에 필요)
pip install pipenv
2. 프로젝트 디렉토리 내에서 pipenv 시작
cd my_project # 프로젝트 루트 디렉토리 진입
pipenv install
3. 패키지 설치
pipenv install package_name
pipenv install package_name==1.2.3 # 버전 지정
pipenv install "package_name>=1.2.3" # 버전 범위 지정
4. dev 버전에서만 필요한 패키지 설치(프로덕션 배포 시 필요한 버전 리스트에는 반영되지 않음)
pipenv install pytest --dev # pytest 모듈은 dev 버전에서만 필요하다고 가정
5. pipenv 진입 / 나가기(프로젝트 루트 디렉토리에서 실행)
pipenv shell # pipenv 환경 진입
exit # pipenv 환경 나가기 (Ctrl + D도 가능)
6. 패키지 삭제
pipenv uninstall package_name
7. pipenv 환경 python 버전 지정
pipenv --python 3.8
8. 해당 디렉토리 내 pipenv 환경 삭제
pipenv --rm
9. 다른 곳에 해당 환경 배포(Pipfile.lock 파일 복사하여 가져오기 필요)
pipenv sync # 프로덕션 배포용 환경
pipenv sync --dev # dev용 환경
10. pipenv 환경 내에서 파이썬 파일 실행
python main.py # pipenv 이미 진입 시
pipenv run python main.py # pipenv 미진입 시
'Python > Utils' 카테고리의 다른 글
파이썬으로 구글 검색 결과 링크 및 텍스트 추출하기 예제 (0) | 2023.10.11 |
---|---|
파이썬에서 종료 시에 특정 함수를 실행하는 방법(atexit 모듈) (2) | 2023.10.04 |
파이썬 해시 함수 모듈 hashlib 사용법 (0) | 2023.09.23 |