파이썬으로 API를 구축할 수 있게 해주는 효율적인 웹 프레임워크인 FastAPI를 공부해보자!
Git은 파일을 기록하고 추적하여 개발자가 이전 버전으로 복원할 수 있는 버전 관리 시스템이다. 운영 체제에 구애받지 않고 설치할 수 있으며, 탈중앙화된 방식을 채택하여 가볍게 사용할 수 있는 도구이다.
[얄팍한 코딩사전]
https://www.youtube.com/watch?v=1I3hMwQU6GU

일반적으로 파이썬 애플리케이션을 개발할 때는 가상 환경(virtual environment)을 사용하는 것이 일반적이다.
가상 환경을 활용하면 애플리케이션을 개발하면서 특정 패키지를 시스템 전체에 설치하지 않아도 되므로, 서로 다른 애플리케이션 간에 발생할 수 있는 충돌을 피할 수 있다.
$ python3 -m venv venv #for mac 🍎
c:\> python3 -m venv venv #for windows 🪟
$ source venv/bin/activate #for mac 🍎
c:\> source venv/bin/activate #for windows 🪟
deactivate
Fastapi 애플리케이션은 파이썬 패키지를 기반으로 만들어진다. 따라서 패키지를 설치하거나 삭제하고 업데이트할 수 있도록 패키지 관리 방법을 알고 있어야 한다. 이때 필요한 pip은 패키지 설치 과정을 도와주는 파이썬 패키지 관리 도구이다.
python -m pip list
설치가 안되어 있다면 아래 링크의 pip 문서 가이드를 따라 설치해야 한다.
https://pip.pypa.io/en/stable/installation/
pip install fastapi
pip uninstall fastapi
pip freeze > requirements.txt
위 명령어를 실행하면 requirements.txt 파일에 패키지 목록이 저장된다.
pip install -r requirements.txt
오늘날의 애플리케이션들은 여러 계층으로 나뉘어져 있다. 그래서 애플리케이션을 간편하게 배포하기 위해서는 모든 구성 요소를 통합해야 한다. 이때 도커(Docker)를 활용하여 애플리케이션의 다양한 계층을 하나의 이미지로 묶어 컨테이너화할 수 있다. 이를 통해 애플리케이션을 클라우드 환경이나 로컬 환경에 손쉽게 배포할 수 있다.
아래 링크에서 도커를 먼저 다운로드 해야 한다.
https://docs.docker.com/desktop/
도커파일과 도커 컴포즈 파일을 활용하면 애플리케이션 이미지를 업로드하거나 공유할 필요가 없다. 도커파일을 이용하여 최신 버전의 애플리케이션을 빠르게 구축하고, 도커 컴포즈 파일을 활용하여 간편하게 배포할 수 있다. 이렇게 생성된 애플리케이션 이미지는 도커 허브에 저장된 후 필요할 때 추출하여 사용할 수 있다.
도커파일에는 아래와 같이 애플리케이션 이미지의 구성 방법을 정의한다.
FROM python:3.8
WORKDIR /usr/src/app # 작업 디렉토리 설정
ADD . /usr/src/app # 현재 로컬 디렉토리의 파일을 컨테이너의 작업 디렉토리로 복사
CMD ["python", "hello.py"] # 명령 실행
docker build -t getting_started .
docker run getting started
🔨
🔨
🔨
위 내용들을 실행하는데 아무 문제가 없었다면, 모든 FastAPI의 간단한 사전준비는 마쳤다.
🔨
🔨
🔨
💪🏻 본격적인 간단한 FastAPI 어플리케이션 만들기는 다음 포스트에서 알아보자!
참고자료: FastAPI를 사용한 파이썬 웹 개발 (한빛미디어)