byteforce

CPN 한국어 자습서 · 외부 문서 한국어 미러

UV 문서 · Guides

FastAPI와 함께 uv 사용하기

Using uv with FastAPI · 원문: docs.astral.sh/uv/guides/integration/fastapi/

아래는 원문을 한국어로 옮긴 미러입니다. 코드·명령은 원문 그대로이며, 가장 최신 정보는 하단 원문 링크에서 확인하세요.

FastAPI는 현대적이고 고성능인 Python 웹 프레임워크로, uv를 사용하여 의존성 설치, 환경 관리, 애플리케이션 실행을 관리할 수 있습니다.

기존 FastAPI 프로젝트 마이그레이션

FastAPI 프로젝트에 uv를 통합하려면 프로젝트 디렉터리로 이동하여 초기화합니다:

코드 · 명령
$ uv init --app

이 명령은 pyproject.toml 파일이 있는 애플리케이션 레이아웃 프로젝트 구조를 생성합니다.

다음으로 FastAPI를 의존성으로 추가합니다:

코드 · 명령
$ uv add fastapi --extra standard

결과 pyproject.toml은 다음과 같습니다:

코드 · 명령
[project]
name = "uv-fastapi-example"
version = "0.1.0"
description = "FastAPI project"
readme = "README.md"
requires-python = ">=3.12"
dependencies = [
    "fastapi[standard]",
]

애플리케이션을 실행합니다:

코드 · 명령
$ uv run fastapi dev

uv run 명령은 자동으로 의존성을 해결하고, 락파일을 생성하며, 가상환경을 구성하고, 그 안에서 명령을 실행합니다. http://127.0.0.1:8000/?token=jessica에서 앱에 접근할 수 있습니다.

배포

다음 구성을 사용하여 Docker로 FastAPI 애플리케이션을 배포합니다:

코드 · 명령
FROM python:3.12-slim

# Install uv.
COPY --from=ghcr.io/astral-sh/uv:latest /uv /uvx /bin/

# Copy the application into the container.
COPY . /app

# Install the application dependencies.
WORKDIR /app
RUN uv sync --frozen --no-cache

# Run the application.
CMD ["/app/.venv/bin/fastapi", "run", "app/main.py", "--port", "80", "--host", "0.0.0.0"]

빌드합니다:

코드 · 명령
$ docker build -t fastapi-app .

로컬에서 실행합니다:

코드 · 명령
$ docker run -p 8000:80 fastapi-app

http://127.0.0.1:8000/?token=jessica에서 기능을 확인합니다.

원문(영어): https://docs.astral.sh/uv/guides/integration/fastapi/ · 본 문서는 학습용 한국어 번역이며 원본의 권리는 원저작자(Astral)에게 있습니다.

원문(영어): https://docs.astral.sh/uv/guides/integration/fastapi/