터칭 데이터
가상환경 설치 - Windows 본문
왜 가상환경을 사용하는가?
로컬서버에 프로젝트를 만들고 작업하지 않고 프로젝트마다 가상환경을 설정해주어야 하는 이유는 무엇일까요?
그 이유는 서로 다른 유형과 목적의 프로젝트들을 한 공간에 넣어서 관리한다면,
매번 하나의 프로젝트를 실행할 때마다 그에 맞춰서 환경을 체크하고 변경해주어야 하며
심한 경우에는 프로젝트 간의 충돌이 발생할 수도 있기 때문입니다. 따라서 이와 같은 문제점들을 방지하고,
Python 프로젝트들을 각각의 목적에 맞게 효율적으로 관리할 수 있다는 측면에서
Python 프로젝트를 다룰 때에는 가상환경을 만들어 사용하는 방법이 권장되고 있습니다.
가상환경 설정하기
파이썬 혹은 아나콘다가 설치 되어있다고 가정합니다.
먼저, 명령 프롬프트 (CMD)창을 켭니다.
> python -m venv DjangoProjects
예시에서는 사용할 가상환경의 이름을 DjangoProjects라고 붙였지만 이름은 여러분들의 자유입니다.
여기서 venv는 virtual environments의 약자이고 -m을 붙이는 이유는 최하단에 후술합니다.
위와 같이 명령을 입력한 뒤 '>' 왼쪽에 적힌 주소(주소는 당연히 사용자마다 다르다)에 가보면
위와 같은 가상환경 폴더가 생성되었을 것입니다.
이를 파이썬으로 접근해 필요에 따라 가상환경을 필요에 따라 켜고 끄는 것이 파이썬 가상환경의 기본 테크닉입니다.
가상환경을 실행하려면 생성한 가상환경 폴더/Scripts 폴더 안에 있는
(위의 이미지에서는 빨간색 박스안의) activate.bat 파일을 실행해야 합니다.
이를 cmd에서 활성화시키는 방법은
> cd DjangoProjects/Scripts
cd 명령어로 가상환경의 Scripts 폴더까지 들어간 후
> cd DjangoProjects/Scripts
> activate.bat
와 같은 순서로 명령어를 입력해줍니다.
가상환경을 비활성화 시키고 싶다면
> deactivate
deactivate를 입력합니다.
가상환경이 잘 실행되었다면
위의 이미지와 같이 가상환경 이름이 괄호에 감싸져 cmd 경로창 앞에 뜰 것입니다.
가상환경에 장고 설치하기
Python을 설치하고 그것을 활용하여 우리의 프로젝트를 위한 가상 환경까지 구축했다면
이제는 Django를 설치할 차례입니다. 지난번 구축했었던 가상환경을 활성화시키고 그 상태에서
명령 프롬프트창에 아래와 같은 코드를 입력해주세요.
python -m pip install Django
위 코드를 실행하였을 때, 아래와 같이 Successfully installed라는 문구가 담긴 결과화면이 나온다면 성공적으로 Django의 설치가 완료된 것입니다.
Django가 올바르게 설치되었는지 한번 더 체크하고 싶으시다면, 아래와 같은 명령어를 입력하여 설치된 Django의 버전이 우리가 원하는 버전과 일치하는지 확인해보시면 됩니다.
django-admin version
'-m' 은 왜 붙일까?
https://snarky.ca/why-you-should-use-python-m-pip/
Why you should use `python -m pip`
Fellow core developer and Canadian, Mariatta [https://twitter.com/mariatta], asked on Twitter about python -m pip and who told her about that idiom along with asking for a reference explaining it: > I learned sometime ago that we should be doing `python -m
snarky.ca
요약하자면 버전이 제각각 다른 여러 파이썬을 사용하는 일이 왕왕 존재하고
이 때 어느 버전 파이썬에 pip install 등의 작업을 진행할지 애매모호하지 않고 명확하게 지칭해주기 위함입니다.
'장고 (Django)' 카테고리의 다른 글
장고(Django) 어드민(Admin) 계정 생성하고 관리하기 (0) | 2023.10.31 |
---|---|
장고(Django) 모델을 수정, 마이그레이션 되돌리기 (0) | 2023.10.31 |
장고(Django) 모델(Model)만들기 (0) | 2023.10.31 |
장고(Django) App 생성하기 (0) | 2023.10.27 |
장고(Django) 프로젝트 생성하기 (0) | 2023.10.27 |