파이썬 가상환경 만들기

2018. 9. 1. 06:00

이전 포스팅에서 애저로 홈페이지를 만들어 보았다. (참조: 애저(Azure)로 웹(홈페이지) 만들기)
나중에 안 사실이지만 장고를 사용하기 위해서는 또다른 환경을 구축해야 했다. ㅡㅡ;
파이썬 장고를 사용하기 전에 몇 가지 알아야 할 것이 있다. 그 중에 가장 먼저 필요한 것은 파이썬 가상환경이다.
오늘은 파이썬 가상환경 만드는 방법에 대해서 알아보도록 하겠다.


제목


파이썬 가상환경(python virtual environment)하나의 PC 또는 서버에 여러 개의 버전의 파이썬을 사용할 수 있도록 해 준다. mac에서 윈도우를 가상환경으로 띄우는 것처럼 특정 버전의 파이썬을 독립적으로 실행할 수 있다.

파이썬 가상환경을 사용하는 이유는 파이썬이나 라이브러리의 버전을 분리하고, 서버에서 사용하는 라이브러리의 버전을 통일하기 위함이다. 파이썬으로 서비스를 하는 경우 특정 라이브러리가 업데이트됨에 따라 관련 소스들을 수정해야 하는 경우가 발생한다. 이러한 경우에 버전이 분리되어 있지 않으면, 소스를 바로 수정해야 하는 등의 문제가 발생한다.


그럼, 파이썬 가상환경을 한 번 만들어보도록 하자.


아래와 같이 입력하면 현재 파이썬이 설치된 위치를 알 수 있다. 해당 파이썬이 아닌 별도로 파이썬 가상환경을 구성해보도록 하자.

- mac: which python
- windows: get-command python


파이썬 가상환경을 만들기 위해서 별도의 디렉토리를 만들고 python -m venv v_test라고 입력한다.

> mkdir test
> cd test
> python -m venv vtest


참고로 윈도우에서도 동일하게 python -m venv vtest라고 하면 가상환경이 만들어진다고 한다. 하지만, 아래와 같은 에러가 발생했다.

> python -m venv v_test

Error: Command '['/Users/open/PycharmProjects/ve_test/test/v_test/bin/python', '-Im', 'ensurepip', '--upgrade', '--default-pip']' returned non-zero exit status 1.


추천포스트


위의 에러를 해결하기는 쉽지 않을 듯 하다. 아마도 아나콘다를 사용하면 발생하는 에러가 아닐까 추측해본다. 서핑을 해보니 virtualenv라는 가상환경을 만들어주는 도구가 있다고 하여, conda install virtualenv로 설치해보았다. 

virtualenv ENV라고 하면 가상환경이 만들어진다. ENV라는 폴더에 가상환경이 만들어진다.

> virtualenv ENV

Using base prefix '/anaconda3'

New python executable in /Users/open/PycharmProjects/ve_test/test/ENV/bin/python

copying /anaconda3/bin/python => /Users/open/PycharmProjects/ve_test/test/ENV/bin/python

Installing setuptools, pip, wheel...done.


성공적으로 가상환경이 생성되었다. activate를 시켜보도록 하겠다.

> source bin/activate

(ENV) >


참고로 윈도우에서는 \ENV\Scripts\activate라고 입력해야 된다고 한다. activate도 성공적으로 실행되었다.


성공적으로 가상환경에 진입했는지 확인하기 위해 pip list를 입력해 본 결과, 기존에 설치한 패키지들이 보이지 않아 가상환경이 잘 만들어진 것을 알 수 있었다.

(ENV) > pip list

Package    Version
---------- -------
pip        18.0   
setuptools 40.2.0
wheel      0.31.1 


오늘은 이렇게 파이썬 가상환경을 만드는 방법에 대해서 알아보았다. python~으로 실행시 에러가 발생했고, virtualenv라는 도구를 이용해서 성공적으로 파이썬 가상환경을 만들 수 있다.


다음 포스팅에서는 django를 설치하고 웹싸이트를 띄워보도록 하겠다. 자세한 내용은 아래 포스팅을 참조하도록 하자.
(참조: 파이썬 장고 설치 및 실행하기)


오픈API를 사용하면 다양한 재미있는 일들을 해 볼 수 있다. 파이썬을 활용한 오픈API 사용이 궁금하다면 아래 글을 참조해보자.

(참조: 오픈API를 활용한 사례는 어떤 것들이 있을까?)


파이썬을 직접 활용하는 것만큼 효과적인 공부는 없다. 그래서 파이썬을 활용해서 할 수 있는 일드을 정리해보았다. 자세한 내용은 아래 포스팅을 참조해보자.
( 참조: 파이썬 활용, 파이썬 프로젝트로 할 수 있는 일들을 알아보자! )


이 글 공유하기


댓글()