상세 컨텐츠

본문 제목

pipenv install --deploy와 --dev

데이터 과학

by Taeyoon.Kim.DS 2023. 10. 31. 20:20

본문

docker container에서 pipfile로 library를 관리하는데, 내 로컬 머신에서는 gpu 가능한 라이브러리를 사용하고, AWS의 EC2-instance에서는 cpu 가능한 라이브러리를 사용하도록 하고 싶어. 예를 들어, EC2에서  torch = {version = "==1.13.1+cpu", index = "downloadpytorch"} 를 사용하고, 내 로컬 머신에서는 torch = ">=1.7.0를 사용하고 싶어. 

pipenv install --deploy 이런기능과 pipenv install --dev 이런기능이 있다는데 어떻게 해야할까?

 

pipenv install --deploy는 Pipfile.lock에 지정된 의존성을 설치합니다. 따라서 미리 만들어진 Pipfile.lock에 의존성 버전이 고정되어 있으면 해당 버전을 설치합니다.
pipenv install --dev는 개발 환경에서 필요한 추가 의존성을 설치하는 옵션입니다. Pipfile에서 [dev-packages] 섹션에 명시된 패키지를 설치합니다.

 

이런 방법이 있다고 하는데, pipfile.lock이 생기고 난 후에는 container rebuild를 하는게 제일 간단한 방법인데 저렇게 bash script를 짜야 한다는게 난 잘 모르겠다.

 

관련글 더보기