본문 바로가기
파이썬(Python)/파이썬 관련

[Python] 가상환경(Virtual Environment) 세팅하기

by Kaya_Alpha 2021. 8. 4.

어느 날 평화롭게 코드를 짜던 도중 예상치 못한 오류가 발생했다.

 

에러의 내용을 살펴보면 새롭게 설치한 라이브러리가 하나 있는데, 해당 라이브러리를 설치하는 과정에서 기존에 설치한 라이브러리의 버전을 바꾸게 되었고, 그 결과로 기존에 깔려있던 다른 라이브러리와 버전 호환이 안된다는 내용이었습니다..ㅜㅜ

지금까지 그냥 하나의 환경에서 잘 쓰고 있던 나에게는 당장 급하게 가상 환경을 세팅 해야만 했습니다.
그래서 이왕 가상 환경을 세팅하는 겸, 나중에 또 찾아볼것이 명확하기에 이참에 정리 해 보고자 합니다.

 

본 포스트에서 다루는 내용은 다음과 같습니다.

  1. 가상환경 생성 및 실행 (종료 포함)
  2. 가상환경 복사
  3. 설치한 가상환경 목록 확인
  4. 가상환경 삭제

1. 가상환경 생성 및 실행(종료)

 

새로운 가상환경을 만들기 위해서는 다음과 같이 입력하면 됩니다. (이 글에서 새롭게 만드는 가상 환경의 이름은 'MyCustumEnv'라고 하겠습니다.)

 

#가상환경 생성 (conda create -n <가상환경 이름>)

$conda create -n MyCustumEnv

#파이썬 버전까지 지정할때(anaconda 기본 패키지 포함 - 보통 기본 패키지를 설치하는게 편함...)
#만약 다른 패키지도 같이 설치하려면 anaconda처럼 뒤에 붙여주면 됩니다.

$conda create -n MyCustumEnv python=3.6.5 anaconda

 

위의 커맨드를 입력하게 되면 아래와 같이 y/n이 뜨게 되면 y를 눌러서 설치를 계속하면 됩니다.

 

설치가 끝나게 되면 아래 commend를 실행하여 가상 환경을 실행할 수 있습니다.

#가상환경 실행 (conda activate <가상환경 이름>)

$conda activate MyCustumEnv

반대로 작업이 끝나서 가상환경을 종료하고 싶을 땐 아래와 같은 커맨드를 사용하면 됩니다.

#가상환경 종료 (conda deactivate <가상환경 이름>)

$conda deactivate MyCustumEnv

 

2. 가상 환경 복사

 

만약 필자처럼 기존에 가상 환경을 사용하지 않고 있다가 급하게 패키지 충돌로 인해 가상환경을 사용하려고 할 때 2가지 방법을 생각해볼 수 있습니다.

  • (기존에 깔아 둔 패키지를 놔두고) 새로운 가상 환경을 만들어서 사용하는 방법.
  • 기존에 사용하던 환경과 똑같은 가상환경을 만든 뒤, 새로운 패키지에 맞게 버전을 맞춰주는 방법.

두 방법 중 본인의 상황에 맞는 방법을 택한 뒤 사용하면 됩니다.

1번 방법을 이용하기 위해서는 이미 위에서 언급한 방법을 사용하면 됩니다!

하지만, 2번 방법을 이용하기 위해서는 기존에 사용하던 환경을 복사하여 새로운 가상환경을 만들어주어야 합니다.

만약, 자신이 가상환경을 한 번도 사용하지 않는 경우에 아래와 같이 왼쪽에 (base)라는 문구를 본 적이 있을 거라고 생각됩니다.

 

이것이 바로 기본으로 설정되어 있는 환경이므로, 기존에 사용하던 환경을 복사하고 싶을 땐 이 base라는 이름의 환경을 복사하면 됩니다.

정리하면, 기존에 사용하고 있던 (가상) 환경을 복사하기 위해서는 다음과 같이 입력하면 됩니다.

 

#기존에 사용하고 있던 기본 환경을 복사(conda create -n <새로운 가상환경 이름> --clone base)

$conda create -n MyCustumEnv --clone base

#사용하고 있던 가상환경을 복사 (conda create -n <새로운 가상환경 이름> --clone <원본 가상환경 이름>)

$conda create -n MyCustumEnv --clone test

 

3. 가상 환경 리스트 보기

 

자신이 지금까지 설치한 가상환경 목록을 확인하고 싶을 땐 다음과 같이 입력하면 됩니다.

#가상환경 리스트

$conda info --envs

 

4. 가상 환경 삭제

 

기존에 설치하였던 가상 환경이 더 이상 필요가 없어지거나 다시 환경을 세팅할 필요가 있을 때 굳이 쓰지 않는 가상 환경은 자리만 차지하고 있을 뿐이므로 제거해 주는 게 좋습니다.

특정 가상 환경의 제거가 필요할 땐 아래 commend를 이용하면 됩니다.

#가상환경 삭제

$conda remove -n MyCustumEnv --all