[FastAPI] 1. 시작하기

미니딩거·2023년 8월 22일

fastapi

목록 보기
1/3
post-thumbnail

파이썬으로 API를 구축할 수 있게 해주는 효율적인 웹 프레임워크인 FastAPI를 공부해보자!

🙋‍♂️ 그 전에, FastAPI 애플리케이션 개발을 위한 개발 환경부터 살펴보아야 한다.


👇🏻 👇🏻 👇🏻

✅  FastAPI 들어가기 전, 체크리스트

Git 개발 환경 준비
virtualenv를 사용한 파이썬 개발 환경 구축
pip을 이용한 패키지 관리
도커 환경 설정


🐈‍⬛  Git 개발 환경 준비

Git은 파일을 기록하고 추적하여 개발자가 이전 버전으로 복원할 수 있는 버전 관리 시스템이다. 운영 체제에 구애받지 않고 설치할 수 있으며, 탈중앙화된 방식을 채택하여 가볍게 사용할 수 있는 도구이다.

Git 설치


Git은 앞으로도 언제나 함께 할테니 잘 알아두자 🙌🏻

[얄팍한 코딩사전]
https://www.youtube.com/watch?v=1I3hMwQU6GU



⚙️  virtualenv를 사용한 파이썬 개발 환경 구축

일반적으로 파이썬 애플리케이션을 개발할 때는 가상 환경(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

🗂  pip을 이용한 패키지 관리

Fastapi 애플리케이션은 파이썬 패키지를 기반으로 만들어진다. 따라서 패키지를 설치하거나 삭제하고 업데이트할 수 있도록 패키지 관리 방법을 알고 있어야 한다. 이때 필요한 pip은 패키지 설치 과정을 도와주는 파이썬 패키지 관리 도구이다.


▶  pip 설치 확인

python -m pip list

설치가 안되어 있다면 아래 링크의 pip 문서 가이드를 따라 설치해야 한다.
https://pip.pypa.io/en/stable/installation/


▶  pip 기본 명령

  • 패키지 설치 (예시 : fastapi 패키지 설치 명령어)
pip install fastapi
  • 패키지 제거 (예시 : fastapi 패키지 제거 명령어)
pip uninstall fastapi

  • 현재 프로젝트에 설치된 모든 패키지 목록 저장 명령어
pip freeze > requirements.txt

      위 명령어를 실행하면 requirements.txt 파일에 패키지 목록이 저장된다.

  • requirements.txt 속 패키지 리스트 모두 설치
pip install -r requirements.txt

🐳  도커 환경 설정

오늘날의 애플리케이션들은 여러 계층으로 나뉘어져 있다. 그래서 애플리케이션을 간편하게 배포하기 위해서는 모든 구성 요소를 통합해야 한다. 이때 도커(Docker)를 활용하여 애플리케이션의 다양한 계층을 하나의 이미지로 묶어 컨테이너화할 수 있다. 이를 통해 애플리케이션을 클라우드 환경이나 로컬 환경에 손쉽게 배포할 수 있다.

도커(Docker) 설치

아래 링크에서 도커를 먼저 다운로드 해야 한다.
https://docs.docker.com/desktop/

도커파일(DockerFile)

도커파일과 도커 컴포즈 파일을 활용하면 애플리케이션 이미지를 업로드하거나 공유할 필요가 없다. 도커파일을 이용하여 최신 버전의 애플리케이션을 빠르게 구축하고, 도커 컴포즈 파일을 활용하여 간편하게 배포할 수 있다. 이렇게 생성된 애플리케이션 이미지는 도커 허브에 저장된 후 필요할 때 추출하여 사용할 수 있다.

도커파일에는 아래와 같이 애플리케이션 이미지의 구성 방법을 정의한다.

FROM python:3.8					
WORKDIR /usr/src/app			# 작업 디렉토리 설정
ADD . /usr/src/app				# 현재 로컬 디렉토리의 파일을 컨테이너의 작업 디렉토리로 복사
CMD ["python", "hello.py"]		# 명령 실행

▶  위 도커파일을 이용해getting_started라는 태그를 가진 이미지 생성

docker build -t getting_started .

▶  컨테이너 이미지가 생성됬다면 실행

docker run getting started

🔨
🔨
🔨

위 내용들을 실행하는데 아무 문제가 없었다면, 모든 FastAPI의 간단한 사전준비는 마쳤다.

🔨
🔨
🔨

💪🏻 본격적인 간단한 FastAPI 어플리케이션 만들기는 다음 포스트에서 알아보자!




참고자료: FastAPI를 사용한 파이썬 웹 개발 (한빛미디어)

profile
안녕하세요! 개발자 미니딩거 입니다:D

0개의 댓글