본문 바로가기
지식/파이썬 (Python)

서버에 파이썬 가상환경 만드는 두가지 방법_venv 와 conda

by 엉클윤 2021. 7. 20.

가상환경이 필요한 이유!

개인 컴퓨터에 가상환경 하는 이유는 보통 python 버전 문제패키지 충돌을 방지하기 목적으로 하는 경우가 많다. 파이썬을 이용하여 작업을 하다보면 사용하게 되는 툴에 따라 특정 버젼의 패키지가 필요한 경우가 많다. 예를 들어 A라는 프로젝트 할 때는 어떤 패키지의 1.0 version이 필요하고, B라는 프로젝트를 할 때는 2.0 version이 필요하다면 매번 작업할 때마다 패키지를 upgrade / downgrade 시켜야 되는 문제가 발생한다. 이러한 경우 각각의 프로젝트를 위한 가상환경을 만들어 두고 패키지를 따로 설치하여 작업하면 편리하다. 

서버에서 작업을 하는 경우는 가상환경이 더욱 필요하다. 서버의 경우 공동으로 사용하는 환경에 새로운 패키지를 모든 사용자가 아무렇게나 마구 설치하게 되면 문제가 생길 수 있다. 이를 방지하기 위해 관리자가 제한을 걸어놓는 경우가 많다. 이런경우 가상환경 만들어서 내가 필요한 패키지 설치해야 하는 경우가 발생한다.

 

서버에서 패키지 설치를 시도한 경우에 아래와 같은 에러를 만난다면 가상환경을 만들어 해결할 수 있다.

Command "python setup.py egg_info" failed with error code 1 ~

 

 

 

venv를 이용하여 가상환경 만들기!

가상환경 만드는 방법 여러가지가 있으나 가장 쉬운것은 파이썬의 venv라는 명령어를 이용하는 것이다.

 

ptyhon -m venv name

위 명령어를 이용하면 다른 패키지를 설치하지 않고 가상환경을 생성할 수 있다.

name 위치에는 가상환경의 이름을 작성하면 된다.

아래와 같이 virtual_env라는 이름의 가상환경을 만들게 되면 directory에 virtual_env라는 폴더가 생성된다.

 

폴더 안에는 bin이라는 하위폴더가 있고 그 안의 activate라는 파일을 확인할 수 있을 것이다.

가상환경을 실행하기 위해서는 source name/bin/activate 을 입력하면 된다. 

 

conda를 이용하여 가상환경 만들기!

가상환경을 만드는 또 다른 방법은 conda 패키지를 이용하는 것이다.

이를 위해서는 먼저 anaconda 또는 miniconda를 설치해야 한다.

(anaconda 설치는 이전 포스팅을 참고)

2021.05.28 - [지식/파이썬 (Python)] - 파이썬 (Python) 기초_아나콘다 (ANACONDA) 소개, 다운로드 및 기본 환경설정

 

conda를 이용해서 가상환경을 설치하기 위해서는 다음과 같은 명령어를 이용하면 된다.

conda create -n name

위와 같은 명령어를 입력하면 env라는 가상환경을 생성할 수 있다.

 

 

가상환경을 만들면서 다른 패키지를 같이 설치하고 싶다면 뒤에 설치하고자 하는 패키지 이름을 입력하면 된다.

 

 

또는 가상환경에서 사용하고자 하는 python의 version을 아래와 같이 입력하여 함께 설치할 수도 있다. 특정 version을 입력하지 않으면 가장 최신 버전의 python을 사용하게 된다.

 

가상환경을 불러오기 위해서는 source activate name을 입력하면 된다.

 

가상환경을 생성하고 성공적으로 불러왔다면 커맨드라인 앞에 (가상환경이름) 이 붙게된다.

(env) [Yuns_Mac practice]$ 

 

 

conda를 사용하는 경우 nb_conda를 설치하여 jupyter notebook에서 편리하게 패키지 관리를 할 수도 있다.

nb_conda를 설치하고 jupyter notebook를 켜면 아래와 같이 Conda 탭이 생기는 것을 확인할 수 있다.

이를 이용하면 탭 안에서 패키지들을 확인할 수 있고, 새로운 노트를 원하는 가상환경으로 만들 수도 있다.

댓글