Python/Utils

[Python Web] Django / Flask / FastAPI 셋팅

yubi5050 2022. 4. 28. 15:18

기본 준비사항

Python 설치 >= 3.6

Anaconda or Python Venv 설치

 

공식 사이트

 

1. Django Setting

1.1 Django 설치 명령어

pip install Django
django-admin startproject [프로젝트명]

 

1-2. Django 폴더 구조

myproject/
    manage.py
    mysite/
        __init__.py
        settings.py
        urls.py
        asgi.py
        wsgi.py

 

manage.py : Django 프로젝트와 상호작용 하는 커맨드 라인의 유틸리티

myproject/ : 디렉토리 아래 실제 Python 패키지들이 저장됨. 프로젝트 내부에서 (myproject.urls)와 같은 식으로 Python 패키지들 import 가능

__init__.py : 해당 디렉토리를 패키지처럼 다루라고 하는 빈 파일

settings.py : 환경 및 구성 저장

urls.py : 해당 프로젝트의 URL 선언 저장

asgi.py, wsgi.py : 현재 프로젝트를 서비스 하기 위한 WSGI/ASGI 호환 웹 서버 진입점

 

1-3. 서버 실행 방법

http://localhost:8000에서 확인 가능

python manage.py runserver

 


2. Flask Setting

2.1 Flask 설치 명령어

pip install Flask

 

2-2. Flask 폴더 구조

myproject/
   app.py
   templates/
      index.html

app.py : Flask 서버 진입점

templates/ : Flask 서버에서 띄울 html 파일 폴더

 

2-3. 서버 실행 방법

http://localhost:5000에서 확인 가능

python app.py

 


3. FastAPI Setting

3.1 FastAPI 설치 명령어

fastapi와 uvicorn 설치

pip install fastapi
pip install uvicorn

 

3-2. FastAPI 폴더 구조

myproject/
   main.py : 직접 생성

main.py : FastAPI 서버 진입점

 

 

3-3. 서버 실행 방법

http://localhost:8000에서 확인 가능

localhost:8000/docs : 자동으로 생성되는 문서 확인

uvicorn main:app --reload --host=0.0.0.0 --port=8000