본문 바로가기

개발스터디/MSA 스터디 (22년)

[MSA 1.0] (1). Python 설치 및 장고 개발환경 구성

반갑습니다. 여러분

우선 첫번째로, 장고 프레임워크를 활용하여, 전체적인 backend 기능들을 구현 하기 위해 

개발환경을 구축하도록 하겠습니다. 윈도우 유저들이 많을것이라고 생각하여, 윈도우 10 pro에 맞게 글을 작성하였고, MAC 유저분들은  번거롭더라도 검색을 활용하여 환경구성을 해주시면 되겠습니다.

 

 

 

1. Python 설치


https://www.python.org/

 

해당 페이지에 접속하여 python을 설치합니다.

파이썬 버전 : 3.10.4 (Windows installer (64-bit))

 

 

설치 할 때 Add Python 3.10 to PATH 적용 시켜놓으면 어느 디렉토리에서나 python 명령어 적용 가능!

 

C:\Users\pahkey> python -V
Python 3.10.4

 

 

2. 가상환경 설치 및 장고 설치


2-1. 가상환경 생성

C:\Users\pahkey> cd \
C:\> mkdir venvs
C:\> cd venvs

### 가상환경을 만듭니다.
# 명령에서 python -m venv는 파이썬 모듈 중 venv라는 모듈을 사용한다는 의미다. 
# 그 뒤의 mysite는 여러분이 생성할 가상 환경의 이름이다

C:\venvs> python -m venv mysite

### 이렇게하면 mysite라는 폴더가 생겼을것이다.
# 폴더에 들어가서 Script를 실행시키면 가상환경에 접속이 가능하다.

C:\venvs>cd C:\venvs\mysite\Scripts
C:\venvs\mysite\Scripts> activate
(mysite) C:\venvs\mysite\Scripts>

 

2-2. 장고설치 

(mysite) C:\venvs\mysite\Scripts> pip install django==4.0.3
Collecting django
  Using cached https://files.pythonhosted.org/packages/01/a5/fb3dad18422fcd4241d18460a1fe17542bfdeadcf74e3861d1a2dfc9e459/Django-4.0.3-py3-none-any.whl
(... 생략 ...)
You should consider upgrading via the 'python -m pip install --upgrade pip' command.

#  upgrade pip 최신버전으로 

(mysite) C:\venvs\mysite\Scripts> python -m pip install --upgrade pip
Collecting pip
  Downloading https://files.pythonhosted.org/packages/54/0c/d01aa759fdc501a58f431eb594a17495f15b88da142ce14b5845662c13f3/pip-
(... 생략 ...)  
Successfully installed pip-20.0.2

 

2-3. git clone 

$ cd /
$ mkdir projects
$ cd /projects

$ git clone https://github.com/themapisto/Django_MSA_project.git

 

3. docker Desktop 설치


3-1. Docker desktop 다운로드

 - 다음 사이트 접속 > Get Docker 클릭 하여 다운로드

 - https://hub.docker.com/editions/community/docker-ce-desktop-windows/

 

3-2. WSL installation

 - 도커실행시 다음과 같은 오류 메세지가 나오는 분들은 해당 링크로 가서 관련 파일을 설치해 준 후 재기동 하면 된다.

 - WSL은 윈도우에 Linux 커널을 사용할수 있게 해주는 기능입니다. 

 

자세히는, WSL은 Windows Subsystem for Linux 2의 줄임말로 윈도우에서 리눅스를 사용할 수 있게 해주는 기능이며, Home 에디션의 경우 Docker를 사용하려면 WSL2가 필수이며, Pro 사용자의 경우 WSL2를 사용하지 않더라도 Hyper-V 기반 가상화를 사용해 Docker Engine을 사용하는 것이 가능합니다.

 

해당 오류 메세지의 https://aka.ms/wsl2kernel 링크에 접속하여 시키는대로 설치하면 됩니다.

 

3-3. docker-compose up 실행

(koo-vm) C:\projects\Django_MSA_project>docker-compose up

## docker-compose up은 Dockerfile을 기반으로 복수 개의 컨테이너를 실행시키는 
## 도커 애플리케이션 배포 툴입니다.
## Compose를 사용하면 YAML 파일을 사용하여 애플리케이션의 서비스를 구성할 수 있습니다.

 

3-4 . docker backend로 migrate

 

# django의 migrate 기능을 활용하여, ORM을 작성한 schema를 이식시켜줘야 한다.

( Django 서버를 통해 migrate 해야함)
$ python manage.py backend sh

( docker exec 안에 들어와서)
$ python manage.py migrate

 

3-5. migrate가 완료되면 schema가 이식된다.