본문 바로가기
개발/FastAPI

FastAPI - 환경 설정하기

by 컴쏘 2023. 12. 29.

FastAPI를 사용하여 할 일을 적고 수행여부를 체크하는 서비스를 만들어보자.

 

FastAPI는 파이썬 프레임워크로, 파이썬 3.6 부터 제공되는 트렌디하고 높은 성능을 가졌다. 

FastAPI의 특징은 다음과 같다. 

  • API 문서 자동 생성 (Swagger와 ReDoc 스타일 동일)
  • 의존성 주입 위주의 설계를 통한 DB 등에 대한 관리 편리
  • 비동기 동작으로 빠른 성능 보장
  • Pydantic을 사용한 Validation 체크
  • 뛰어난 공식문서 가이드
  •  

요구되는 환경은 다음과 같다. 

  • Python 3.10 이상 
  • Docker
  • MySQL 8.0 
  • IDE : PyCharm

 

Python 3.10, Docker, PyCharm이 설치되어있다고 가정한 상태에서 프로젝트를 생성해보자. 

 

다음의 명령어를 통해 가상 환경을 생성, 실행, 종료를 할 수 있다. 

# todos 가상 환경 생성 
python -m venv todos 

# todos의 Scripts 내부에 있는 activate.bat을 통한 가상 환경 실행 
cd todos
Scripts\activate.bat 

# 가상환경 종료 
Scripts\deactivate

 

가상 환경을 만들고 가상 환경 내부에서 FastAPI와 uvicorn을 설치한다. 

pip install fastapi==0.97.0
pip install uvicorn

 

이때, FastAPI의 버전을 명시하는 이유는 최신 버전은 FastAPI가 pydantic v2를 사용하지만, 이 프로젝트는 v1을 사용하기 때문이다.

 

코드 실행은 todos 하위 폴더로 src 폴더를 하나 만들고, src 폴더 내부에 main.py 을 만든다. 

그리고 src 폴더로 이동해서 다음의 명령어를 실행하면 된다.

uvicorn main:app --reload

 

reload 옵션을 안 붙여도 main을 실행할 수 있다. 하지만, reload를 붙이는 이유는 코드가 수정되면 자동으로 반영되어서 실행되기 때문이다. 따라서, reload를 붙여서 실행하는 것이 좋다. 


인프런 - [실전! FastAPI 입문 강의]를 참고하였습니다. 

'개발 > FastAPI' 카테고리의 다른 글

FastAPI - ToDo 서비스 기능 만들기 (1)  (0) 2023.12.29