Ласкаво просимо на чергову лекцію, друзі!
Сьогодні ми продовжимо занурюватись у світ FastAPI, а також навчимось встановлювати цей фреймворк і сервер Uvicorn. Для цього нам потрібно буде підготувати середовище розробки. Якщо ви вже налаштували віртуальні середовища і не боїтесь pip-інсталяцій, то можна заспокоїтись — нічого складного тут не буде. Якщо ні — не лякайтесь, ми все розжуємо!
Але перед тим як зануритись в установку, освіжимо пам'ять.
Навіщо потрібен Uvicorn?
Перед тим як почати встановлення, швидко розберемось, навіщо нам ще й Uvicorn. FastAPI — це фреймворк, і він відповідає за написання коду, але для його виконання потрібен "рушій", щоб обробляти запити. Цей рушій називається ASGI-сервер.
ASGI (Asynchronous Server Gateway Interface) — це стандарт, який дозволяє запускати асинхронні веб-додатки. Uvicorn — один із найпопулярніших ASGI-серверів. Він швидкий, легкий і повністю сумісний з FastAPI.
Без нього код FastAPI буде як машина без водія — готовий до роботи, але нікому натиснути на газ (тобто виконати запити до вашого сервера).
План дій
Ось чим ми зараз займемося:
- Встановимо необхідне ПЗ (Python, менеджер пакетів).
- Створимо і активуємо віртуальне оточення.
- Встановимо FastAPI через pip.
- Встановимо Uvicorn для запуску FastAPI-додатку.
- Перевіримо встановлення.
Отже, озброюємось клавіатурами і починаємо.
1. Встановлення Python і менеджера пакетів
Почнемо з того, що нам потрібен Python. Так, сюрприз! FastAPI вимагає версії Python 3.7 або вище, тому якщо ваш Python десь застряг на 3.5+, пора його оновити. У вашому терміналі перевірте встановлену версію за допомогою команди:
python --version
Або для деяких систем:
python3 --version
Ви повинні побачити щось на кшталт:
Python 3.12.1
Якщо версія нижча за 3.7, встановіть нову з офіційного сайту Python: https://www.python.org/downloads.
Також перевірте, що встановлений менеджер пакетів pip. Ви вже знаєте, що він зазвичай йде в комплекті з Python, але все ж таки перевірте:
pip --version
Якщо його немає, встановіть вручну:
python -m ensurepip --upgrade
2. Створюємо віртуальне оточення
Для будь-яких Python-проєктів ми завжди створюємо віртуальні оточення — це як ізольований світ, де ваші залежності не конфліктують з глобальними. У FastAPI вони особливо корисні, тому що ми будемо використовувати багато додаткових бібліотек.
У термінах Python ми створюємо віртуальне оточення так:
python -m venv venv
Це створить папку venv у вашому проєкті.
Тепер активація
На Windows:
venv\Scripts\activate
На Mac/Linux:
source venv/bin/activate
Після активації ви побачите щось на кшталт (venv) на початку рядка терміналу — це означає, що ви в віртуальному оточенні.
3. Встановлення FastAPI
Тепер, коли ми в віртуальному оточенні, переходимо до найцікавішого — встановлення FastAPI. Використовуємо наш улюблений pip:
pip install fastapi
Після виконання цієї команди Python завантажить і встановить всі файли, необхідні для роботи FastAPI.
4. Встановлення Uvicorn
Тепер встановимо Uvicorn, який буде нашим сервером. Для інсталяції ми знову використовуємо pip, але додамо ще один параметр:
pip install "uvicorn[standard]"
Чому тут квадратні дужки? Тому що параметр [standard] додасть додаткові залежності, які стануть в пригоді для кращої продуктивності. Це цілком нормальна практика.
5. Перевірка встановлення
Щоб упевнитися, що все встановлено правильно, давайте створимо невеликий скрипт на FastAPI і спробуємо його запустити за допомогою Uvicorn.
Створіть файл, наприклад, app.py, і додайте у нього такий код:
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
async def read_root():
return {"message": "Привіт, FastAPI!"}
Тепер запустимо сервер. Виконайте в терміналі:
uvicorn app:app --reload
Тут:
app:app— це шлях до додатку. Перша частинаapp— це назва файлу (без.py), а другаapp— наша зміннаappз коду.--reloadвмикає автоматичну перезагрузку при зміні коду (що зручно в розробці).
Якщо все зроблено правильно, ви побачите щось на кшталт:
INFO: Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)
INFO: Started reloader process [12345] using statreload
INFO: Application startup complete.
Відкрийте браузер і перейдіть за адресою http://127.0.0.1:8000. Ви маєте побачити:
{"message": "Привіт, FastAPI!"}
Вітаємо! Ви щойно запустили свій перший FastAPI сервер.
Корисні поради
- Не забувайте активувати віртуальне оточення перед кожним запуском проєкту. Якщо ви не активували оточення, Python не знайде ваші залежності.
- Для продакшна використовуйте оптимізовану версію Uvicorn. Параметр
--reloadрекомендований тільки для розробки. - Якщо щось не працює — перевірте вашу версію Python. FastAPI активно використовує анотації типів, що вимагає версії Python 3.7 і вище.
На цьому наша установка завершена! Тепер ви готові до створення повноцінного API. У наступних лекціях ми почнемо налаштовувати проєкт і вивчати основи маршрутизації. Чудова робота і до зустрічі!
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ