pipenv - python 가상환경 및 패키지 관리
포스트
취소

pipenv - python 가상환경 및 패키지 관리

여러 프로젝트를 진행하다 보면 ‘python 버전’이나 ‘패키지 버전’으로 인해 문제가 생기는 경우가 많습니다. 이런 문제를 겪은 분들은 각 프로젝트마다 ‘가상환경’을 생성해 이용합니다. 파이썬에서 가상환경을 생성하는 툴 중 하나인 pipenv에 대해서 알아보겠습니다.

Pipenv is a Python virtualenv management tool that supports a multitude of systems and nicely bridges the gaps between pip, python (using system python, pyenv or asdf) and virtualenv. Linux, macOS, and Windows are all first-class citizens in pipenv.

출처: Pipenv 공식문서

pipenv는 파이썬의 가상환경을 관리할 수 있는 툴입니다. 기존에 pipvirtualenv로 패키지 설치와 가상환경 생성을 하던 것을 한번에 할 수 있게 지원합니다. 또한, 패키지를 설치/제거할 경우 자동으로 Pipfile을 수정합니다.

1. pipenv 설치

공식문서에서 pipenv설치는 pip을 통해 설치하는 것을 추천합니다.

1
$ pip install --user pipenv

homebrew를 통해서도 설치할 수 있습니다.

1
$ brew install pipenv

2. 패키지 설치

기본적으로 패키지 설치는 프로젝트 단위로 관리합니다. 그러므로 해당 디렉토리에서 패키지를 설치하면 됩니다. 설치한 패키지 정보는 Pipfile에서 확인을 할 수 있습니다. 아래 예제는 sample 디렉토리를 만들고 파이썬 3.9 버전 가상환경을 만드는 예제입니다.

1
2
3
$ mkdir sample
$ cd sample
$ pipenv --python 3.9

image

pipenv install <packages> 를 통해 패키지 설치를 할 수 있으며 Pipfile에 해당 내용이 작성됩니다.

image image

3. 가상환경 실행

pipenv shell을 통해 가상환경을 직접 실행할 수 있으며, 단순히 파이썬 스크립트를 해당 가상환경으로 실행하려고 할 때는 pipenv run python main.py를 통해 실행할 수 있습니다.

1
2
3
$ cd sample
$ pipenv shell # activate virtualenv
$ exit # deactivate virtualenv

image

4. 참고

  • 만들어진 Pipfile을 다른 디렉토리로 복사한 후 pipenv shell을 하면 가상환경을 새로 만들 수 있습니다.

  • pipenv graph 명령어를 통해 설치된 패키지 버전에 대한 종속성을 확인할 수 있습니다.

1
$ pipenv graph
  • pipenv requirements 명령어를 통해 Pipfile.lock로 부터 requirements.txt 형태의 결과를 만들 수 있습니다.
1
$ pipenv requirements

참고자료

이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.