체대출신 코더의 개발자 성장기
장고- 가상환경 구축? 본문
장고를 다운로드 하려는데 pyenv라는 가상환경을 다운로드 받아야하는 이슈가 있어서
왜 굳이 가상환경을 설정해야하는지 의문이 들었다.
검색 결과 파이썬 버젼 관리에 대한 이슈 때문에 가상환경을 설정 해야한다고 하는데 더 자세히 들어가보자
1. 왜 가상환경이 필요하지?

하나의 프로젝트는 많은 파이썬으로 작성한 코드들의 파일이 모여서 실행된다.
만약, 모두 다른버전의 파이썬으로 작업하다 하나로 합치는 경우가 생긴다고 생각해보자. 어떤 일이 일어날까?
버전충돌이 일어나 난리가 날 확률이 매우 높아진다.
이러한 상황을 방지하기 위해 가상환경이 필요하다고 생각하면 될것같다.
예를 들어 장고 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 |