Как запустить приложение FastAPI?

«Как запустить приложение FastAPI?» — вопрос из категории Библиотеки и модули, который задают на 10% собеседований Python Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

FastAPI — это асинхронный веб-фреймворк, поэтому для его запуска требуется ASGI-сервер. Самым популярным выбором является Uvicorn.

Процесс запуска состоит из трех шагов:

1. Установка зависимостей

Установите FastAPI и ASGI-сервер Uvicorn.

pip install fastapi uvicorn[standard]

2. Создание приложения

Создайте файл, например, main.py, с минимальным приложением.

# main.py
from fastapi import FastAPI

# Создаем экземпляр приложения
app = FastAPI()

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

3. Запуск сервера

В терминале выполните команду для запуска Uvicorn, указав ему, где находится ваше приложение.

uvicorn main:app --reload

Разбор команды:

  • main: Имя файла (модуля) без расширения .py.
  • app: Имя переменной в main.py, которая содержит экземпляр FastAPI.
  • --reload: Флаг для режима разработки. Сервер будет автоматически перезапускаться при изменении кода.

После запуска сервер будет доступен по адресу http://127.0.0.1:8000, а интерактивная документация — по http://127.0.0.1:8000/docs.

Для Production: В производственной среде флаг --reload не используется. Вместо этого часто применяют менеджер процессов, такой как Gunicorn, для управления воркерами Uvicorn: gunicorn -w 4 -k uvicorn.workers.UvicornWorker main:app