가상환경 (+anaconda)

2020. 12. 10. 05:44Computer/Development

1. 기본환경 venv

 

macOS 에서 기본 가상 환경 venv 실행하는 방법

Python3 로 venv 모듈을 실행하여 가상환경을 만들고, source로 bin 디렉터리 안의 activate 파일을 적용하여 가상환경을 활성화 한다.

 

  • Command prompt

~$ python3 -m venv bin (bin은 activate 파일이 있는 폴더)

~$ cd bin

source bin/activate

 

-> (bin) madquer@madquerui-MacbookPro  bin %

으로 뜨게 됨. (conda 일 경우 conda 로 뜰 것)

 

비활성화는 deactivate 만 입력하면 됨.

 

 

  • 주의할 점

가상 환경을 만들고 나서 폴더(디렉터리)를 다른 곳으로 이동시키면 활성화가 안 됨.

왜냐하면 가상 환경을 활성화하는 activate.bat, Activate.ps1, activate 파일 안에 현재 가상 환경 폴더의 경로가 내장되어 있기 때문.

만약 가상 환경 폴더를 다른 곳으로 이동시켰다면 activate.bat, Activate.ps1, activate 파일 안의 VIRTUAL_ENV 부분을 이동시킨 폴더 경로로 수정해준다.

 

  • 패키지 목록 관리하기 (코딩도장 p.754 참고) - 추후 실천해보고 추가 정리

: 가상 환경에 설치된 패키지는 목록을 저장해 두었다가 나중에 다시 설치할 수 있다.

다음과 같이 pip freeze로 패키지 목록과 버전 정보를 requirements.txt 파일에 저장한다. (git 등으로 버전 관리를 할 때 저장소에 설치된 패키지를 모두 추가하지 않고 requirements.txt 파일만 관리하면 된다.)

 

 

2. anaconda 가상환경 만들기

 

아나콘다에서 venv 를 사용해도 되지만 아나콘다는 전용 가상 환경을 제공하므로 이 환경을 사용하는 것을 권장.

아나콘다에서는 conda 를 사용하여 가상 환경을 만든다. conda는 아나콘다 설치 폴더의 Scripts 안에 들어있다.

 

  • conda create --name 가상 환경 이름

/anaconda3/bin/conda.exe create --name example

 

- 실행예시

  • Commnad prompt

conda create --name example (example : 가상 환경 이름 설정)

 

  • 가상환경을 활성화할 때는 아나콘다 설치 폴더의 bin/activate dp 가상환경 이름을 지정하여 실행해야 한다.
  • 반드시 명령 프롬프트 에서 실행

 

Conda 는 venv 와는 달리 가상 환경을 현재 폴더에 생성하지 않고 아나콘다 설치 폴더의 envs 안에 생성한다.

 

 

  • 아나콘다 가상 환경에 패키지를 설치할 때는 pip대신 conda 를 사용해야 한다.

만약 pip를 사용하면 아나콘다 설치 폴더의 Lib/site-packages 안에 패키지가 저장되므로 주의해야 한다.

 

conda install 패키지

 

(example) conda install numpy

 

 

  • Conda 주요 명령어
  • conda info : 현재 환경 정보 출력
  • conda search 패키지 : 패키지 검색
  • conda install 패키지=버전 : 특정 버전의 패키지를 설치 (예 : conda install numpy=1.11.3)
  • conda install 패키지=버전=파이썬버전 : 파이썬 버전을 지정하여 특정 버전의 패키지를 설치 (예 : conda install numpy=1.11.3=py36_0)
  • conda update 패키지 : 패키지 업데이트
  • conda list : 패키지 목록 출력
  • conda remove 패키지 : 패키지 삭제
  • conda list --export > package-list.txt : 패키지 목록 및 버전 정보 저장
  • conda install --file package-list.txt : 패키지 목록으로 설치

 

Conda 는 venv 와는 달리 가상 환경을 현재 폴더에 생성하지 않고 아나콘다 설치 폴더의 envs 안에 생성한다.

매우 중요**

 

일반적으로 가상환경 설정 ex) virtualenv 또는 venv 설정시 / 현재 폴더에 가상환경이 같이 생성된다.

하지만 위의 언급된, conda 가상환경을 아나콘다 설치 폴더의 envs 안에 생성한다는 말은, anaconda3/envs/안에 가상환경이 생성되고, 작업하는 파일은 다른 디렉토리에 존재할 것이며, 그것이 파이참을 통해 연동된다는 말이다.

 

 

 

 

 

 

 

'Computer > Development' 카테고리의 다른 글

파이참 가상환경 설정  (0) 2020.12.10