r잡초처럼
바른 프로그래밍
r잡초처럼
전체 방문자
오늘
어제
  • 분류 전체보기 (124)
    • FastAPI (7)
    • 끄적끄적 (2)
    • Python (17)
    • Django (31)
    • Database (2)
    • Docker (7)
    • 디자인패턴 (2)
    • CS 공부 (12)
      • 알고리즘 (2)
      • 자료 구조 (1)
      • 네트워크 (7)
      • IT 지식 (1)
      • 운영체제 (1)
    • 기타 팁들 (10)
    • Aws (2)
    • 독서 (1)
    • 코딩테스트 공부 (1)
      • 백준 (0)
      • 프로그래머스 (1)
    • DevOps (13)
    • TIL (3)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • query param
  • 모두의 네트워크
  • 6장
  • pycharm
  • 책 리뷰
  • depends
  • 랜 카드
  • validate
  • dotenv
  • CS 지식
  • preonboarding
  • 5장 회사에서 하는 랜 구성
  • poetry
  • 컴퓨터 기본 지식
  • 케이블의 종류
  • 상속 안티 패턴
  • 상속과 컴포지션
  • 네트워크
  • 7장
  • 파이썬 클린 코드
  • 전기 신호
  • pytest
  • encoding
  • 랜과 왠
  • Batch
  • 완벽한 IT 인프라 구축을 위한 Docker
  • fastapi
  • docker
  • 물리 계층
  • cp949

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
r잡초처럼

바른 프로그래밍

FastAPI

FastAPI 시작하기 - 개발환경 세팅

2023. 8. 1. 17:03

FastAPI로 개발하게 될 거 같아서 공부를 해보자. 일단 개발환경부터 세팅하자

개발환경은 pyenv와 poetry로 가상환경을 설정했다.

 

pyenv

특징

  • pyenv 는 Python의 버전을 관리할 수 있다. 
  • 여러 개의 프로젝트에서 다양한 python 버전으로 개발환경을 세팅할 수 있다.
  • 시스템 전체에 영향을 주지 않고 버전을 바꿀 수 있다.

주요 기능

  • 여러 버전의 Python 설치
  • 가상 환경 관리
    • pyenv를 사용하여 가상 환경을 생성하고 관리할 수 있다.
    • 각각의 프로젝트에 맞게 가상 환경을 생성하여 의존성을 격리할 수 있다.

사용 예시

  • python 설치하기
# Python 3.9.6 버전 설치
pyenv install 3.9.6

# Python 3.8.12 버전 설치
pyenv install 3.8.12
  • 설치한 버전 확인하기
pyenv versions
  • 프로젝트에서만 해당 python 버전 사용하기
cd my_project

pyenv local 3.8.12
  • 전역으로 python 버전 설정하기
pyenv global 3.10.10

Poetry

특징

  • Poetry는 Python 패키지 관리 도구
  • Group 옵션을 통해 다양한 환경에서 의존성을 관리할 수 있다.

주요 기능

  • 가상 환경 생성과 관리
  • 패키지 의존성 관리
  • 프로젝트 정보 관리
    • pyproject.toml 파일을 사용하여 프로젝트의 정보를 정의한다.
    • 프로젝트의 이름, 버전, 저자 등의 정보를 설정할 수 있다

사용 예시

  • 프로젝트 생성과 의존성 추가
# 새 프로젝트 생성
poetry new my_project

# pyproject.toml 생성
cd my_project
poetry init

# 의존성 추가
poetry add requests
poetry add numpy --dev  # dev group에 numpy 설치
  • 라이브러리 및 파일 실행하기(black, pytest 또는 소스 코드)
# 소스 코드 실행
poetry run python your_script.py

# pytest 실행
poetry run pytest
  • 의존성 패키지 설치하기
poetry install

FastAPI

특징

  • ASGI 서버와 호환되어 비동기 방식으로 동작한다
  • 안정적이고 빠른 개발환경을 제공한다

주요 기능

  • 빠른 성능
  • 강력한 타입 힌팅
  • API 문서 자동화

사용 예시

  • fastapi 및 서버 설치
poetry add fastapi

poetry add "uvicorn[standard]"
  • 간단한 api 예시
from fastapi import FastAPI

app = FastAPI()


@app.get("/")
async def root():
    return {"message": "Hello World"}

'FastAPI' 카테고리의 다른 글

FastAPI - Query Parameter에 Custom Validate 적용하기  (0) 2023.09.02
FastApi 사용하면서 기록할 것들  (0) 2023.08.30
Annotated  (0) 2023.08.03
QueryParameter  (0) 2023.08.02
FastAPI - PathParameter  (0) 2023.08.02
    'FastAPI' 카테고리의 다른 글
    • FastApi 사용하면서 기록할 것들
    • Annotated
    • QueryParameter
    • FastAPI - PathParameter
    r잡초처럼
    r잡초처럼
    오늘보다 내일 더 나은 개발자가 되기 위한 노력을 기록하는 블로그 입니다.

    티스토리툴바