Notice
Recent Posts
Recent Comments
Link
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

체대출신 코더의 개발자 성장기

장고- 가상환경 구축? 본문

CodeStates/TIL

장고- 가상환경 구축?

미토콘크리트 2019. 7. 25. 17:03

장고를 다운로드 하려는데 pyenv라는 가상환경을 다운로드 받아야하는 이슈가 있어서 

왜 굳이 가상환경을 설정해야하는지 의문이 들었다.

 

검색 결과 파이썬 버젼 관리에 대한 이슈 때문에 가상환경을 설정 해야한다고 하는데 더 자세히 들어가보자

 

1. 왜 가상환경이 필요하지?

https://django-easy-tutorial.blogspot.kr/2015/08/python-virtual-environment-setup-in-ubuntu.html

하나의 프로젝트는 많은 파이썬으로 작성한 코드들의 파일이 모여서 실행된다. 

만약, 모두 다른버전의 파이썬으로 작업하다 하나로 합치는 경우가 생긴다고 생각해보자. 어떤 일이 일어날까?

버전충돌이 일어나 난리가 날 확률이 매우 높아진다.

 이러한 상황을 방지하기 위해 가상환경이 필요하다고 생각하면 될것같다.

 예를 들어 장고 1.5로 작성중인 A와 장고 1.4로 코드를 작성중인 B 가 있다고 해보자

 A와 B를 한 프로젝트로 합치려니 B의 버전이 너무 낮아 의존성의 문제로 B가 실행이 되지 않는다.

 근데 하나로 합쳐져도 A의 환경과 B의 환경이 각각 독립적으로 돌아갈 수 있다면 어떻게 될까?

 서로 의존할 일도 없고, 나만 잘돌아가면 되는 상황이라 프로젝트가 잘 돌아가지 않을까? 

 

2. 비슷한게 있었던 것같은데..

 TIL에서 다루진 않았지만 미리 설정해놓은 환경을(로컬) 다른곳(프로젝트결합)에서도 사용할 수도 있다는 특징은 

 DOCKER와 매우 유사한것 같다.

 

3. 가상환경의 종류

 파이썬 가상환경은 virtualenv , pyenv, pyenv-virtualenv, pipenv 등 많은 환경이있다.

 최근에 나온 pipenv를 많이 사용하는 것 같지만, 업데이트 이슈나 오류등의 문제로 공식문서에서는 pyenv를 권장하는 것 같다. 

'CodeStates > TIL' 카테고리의 다른 글

구글어시스턴트와 노드서버를 잇기2  (0) 2019.07.26
구글 어시스턴트와 노드 서버를 잇기1  (0) 2019.07.26
장고 - __init__  (0) 2019.07.25
장고-MTV 모델  (0) 2019.07.25
파이썬 - 튜플  (0) 2019.07.20
Comments