Закажи экспресс-аудит своего дела онлайн всего за 199 ₽
и получи рекомендации по улучшению - Жми сюда !

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

Узнайте, как создавать, тестировать, развертывать и отслеживать свое первое приложение FastAPI Cloud — простую панель мониторинга в режиме реального времени, включающую статусы Gold и Silver.

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

# Введение

FastAPI значительно развился из простой библиотеки Python для обслуживания API. Он превратился в более широкую экосистему, на которую полагаются многие разработчики при создании современных веб-приложений, особенно для проектов в области искусственного интеллекта и машинного обучения. Одна из причин популярности FastAPI — его скорость, простота и удобный для разработчиков дизайн.

Обзор облачной платформы FastAPI
Изображение из FastAPI Cloud

Теперь, с FastAPI Cloud , процесс развертывания также значительно упрощается. Вместо того чтобы тратить время на настройку серверов и конвейеров развертывания, вы можете развернуть приложение за считанные секунды, используя интерфейс командной строки (CLI) FastAPI Cloud. Настройка кажется простой, легкой и гораздо ближе к тому удобству, которого разработчики ожидают от современных управляемых платформ.

На момент написания этой статьи доступ всё ещё предоставляется через список ожидания. Я подал заявку пару месяцев назад и недавно получил доступ, поэтому решил составить простое руководство, основанное на моём опыте. В этом руководстве я расскажу о базовом процессе настройки и покажу, как развернуть небольшое приложение FastAPI всего за несколько шагов.

# Создание проекта

В этом уроке вы создадите простую панель мониторинга цен на металлы в режиме реального времени с использованием FastAPI. Приложение будет получать цены на золото и серебро из API, возвращать данные в формате JSON и отображать значения в браузере с помощью небольшого HTML-интерфейса.

Прежде чем начать, убедитесь, что у вас есть:

  • Для создания структуры проекта необходимо установить UV- развертку или последнюю поддерживаемую версию Python.
  • Учетная запись FastAPI Cloud.

Для начала создайте новый проект FastAPI с помощью официальной команды настройки:

uvx fastapi-new metals-live cd metals-live

FastAPI сгенерирует структуру проекта и установит необходимые зависимости за вас в течение нескольких секунд.

Структура проекта FastAPI после создания каркаса
Изображение предоставлено автором.

Далее активируйте виртуальное окружение в каталоге проекта.

В Linux/macOS:

источник .venv/bin/activate

В Windows PowerShell:

.venvScriptsActivate.ps1

# Добавление httpx

Далее установите необходимые для приложения пакеты. Мы будем использовать httpx для получения актуальных цен на золото и серебро из API, а также убедимся, что установлены стандартные дополнительные компоненты FastAPI, чтобы приложение работало и развертывалось без проблем и без отсутствующих зависимостей.

uv add httpx «fastapi[standard]»

Эта команда добавляет httpx для выполнения исходящих API-запросов и устанавливает стандартные зависимости FastAPI, обычно необходимые для разработки и развертывания.

# Замена приложения по умолчанию

Теперь пришло время заменить стандартное приложение FastAPI на ту версию, которую вы действительно будете развертывать.

Вот как выглядит структура проекта по умолчанию:

Стандартная структура проекта FastAPI
Изображение предоставлено автором.

Откройте файл main.py и замените его содержимое пользовательским кодом, показанным ниже. Эта версия делает две вещи: она получает актуальные цены на золото и серебро из Gold API и предоставляет простую панель управления для браузера, которая автоматически обновляется каждые 15 секунд.

Вставьте это в файл main.py:

import httpx from fastapi import FastAPI, HTTPException from fastapi.responses import HTMLResponse app = FastAPI(title=»Live Gold & Silver Prices») GOLD_API_BASE = «https://api.gold-api.com» async def fetch_price(symbol: str): url = f»{GOLD_API_BASE}/price/{symbol}» async with httpx.AsyncClient(timeout=10.0) as client: response = await client.get(url) if response.status_code != 200: raise HTTPException(status_code=502, detail=f»Failed to fetch {symbol} price») data = response.json() return { «symbol»: data.get(«symbol», symbol), «name»: data.get(«name», symbol), «price»: data.get(«price»), «currency»: data.get(«currency», «USD»), «updatedAt»: data.get(«updatedAt») or data.get(«timestamp»), } @app.get(«/api/prices») async def get_prices(): gold = await fetch_price(«XAU») silver = await fetch_price(«XAG») return { «gold»: gold, «silver»: silver, } @app.get(«/», response_class=HTMLResponse) async def home(): return «»» Цены на золото и серебро в реальном времени

Цены на золото и серебро в реальном времени

Цены автоматически обновляются каждые 15 секунд.

Золото
Загрузка…

Серебро
Загрузка…

«»»

Что делает этот код:

  • Создает приложение FastAPI.
  • Получает актуальные цены на золото и серебро из API.
  • Возвращает данные через /api/prices.
  • Предоставляет простую HTML-панель управления по адресу /.
  • Цены на сайте обновляются каждые 15 секунд.

# Локальное тестирование

Перед развертыванием рекомендуется запустить приложение локально и убедиться, что все работает должным образом. FastAPI упрощает эту задачу благодаря встроенному серверу разработки.

Запустите приложение с помощью:

fastapi dev main.py

После запуска сервера FastAPI сгенерирует локальный URL-адрес для вашего приложения и URL-адрес документации для тестирования конечных точек.

Сервер разработки FastAPI запущен в терминале.
Изображение предоставлено автором.

Откройте браузер и перейдите по адресу:

http://127.0.0.1:8000

На панели мониторинга в режиме реального времени должны отображаться цены на золото и серебро. Значения будут автоматически обновляться каждые 15 секунд.

Актуальная панель цен на металлы: золото и серебро.
Изображение предоставлено автором.

Вы также можете протестировать конечную точку JSON напрямую по адресу:

http://127.0.0.1:8000/api/prices

Это особенно полезно, если вы хотите проанализировать необработанный ответ или впоследствии подключить данные к другому интерфейсу или приложению.

Необработанный JSON-ответ от конечной точки /api/prices
Изображение предоставлено автором.

# Развертывание в FastAPI Cloud

После того как приложение заработает локально, вы готовы развернуть его в FastAPI Cloud. Процесс развертывания очень прост и начинается с одной команды.

Бегать:

fastapi deploy

Интерфейс командной строки поможет вам подключить вашу учетную запись FastAPI Cloud и завершить настройку. В процессе регистрации вам могут задать несколько коротких вопросов, например, о названии вашей команды, названии приложения и параметрах развертывания.

Подсказки при регистрации в FastAPI Cloud CLI
Изображение предоставлено автором.

После этого FastAPI Cloud создаст и развернет ваше приложение.

Разработка и развертывание FastAPI Cloud находятся в процессе.
Изображение предоставлено автором.

После завершения развертывания вы получите действующий публичный URL-адрес вашего приложения — например:

Развертывание FastAPI Cloud завершено, доступен активный URL-адрес.
Изображение предоставлено автором.

https://metals-live.fastapicloud.dev/

FastAPI Cloud также предоставляет интерактивную документацию по API по адресу:

https://metals-live.fastapicloud.dev/docs

Страница документации интерактивного API FastAPI Cloud
Изображение предоставлено автором.

Это удобно, потому что вы можете тестировать свой API прямо из браузера, без необходимости использования каких-либо дополнительных инструментов.

Тестирование конечной точки API через интерфейс документации FastAPI Cloud.
Изображение предоставлено автором.

# Мониторинг приложения

После развертывания вы можете использовать панель управления FastAPI Cloud для мониторинга вашего приложения и проверки его журналов.

Чтобы просмотреть журналы:

  • Откройте панель управления FastAPI Cloud.
  • Перейдите в раздел «Приложения» .
  • Выберите приложение.
  • Открытые журналы .

Это полезно для проверки корректности работы вашего приложения, выявления ошибок API и отладки проблем после развертывания.

Панель мониторинга FastAPI Cloud, отображающая журналы приложений.
Изображение предоставлено автором.

FastAPI Cloud также начинает напоминать такие платформы, как Supabase или Vercel , предлагая управляемый хостинг, быструю развертку через командную строку и дополнительные интеграции, которые можно подключать к вашему приложению по мере его развития.

Панель интеграции панели управления FastAPI Cloud
Изображение предоставлено автором.

# Завершение

FastAPI Cloud упрощает перенос небольшого приложения FastAPI из локальной среды разработки в рабочую среду. В этом руководстве мы создали простую панель мониторинга Metals в режиме реального времени, протестировали её локально, развернули одной командой и проверили журналы после запуска.

Для первого развертывания рабочий процесс прост и является хорошим введением в возможности FastAPI Cloud.

Абид Али Аван (@1abidaliawan) — сертифицированный специалист по анализу данных, увлеченный созданием моделей машинного обучения. В настоящее время он занимается созданием контента и написанием технических блогов о технологиях машинного обучения и анализа данных. Абид имеет степень магистра в области управления технологиями и степень бакалавра в области телекоммуникационной инженерии. Его цель — создать продукт на основе искусственного интеллекта с использованием графовой нейронной сети для студентов, страдающих психическими заболеваниями.

Источник: www.kdnuggets.com

✅ Найденные теги: Cloud, FastAPI, Как, новости, Приложение, Развертывание

Добавить комментарий

Новости других рубрик

Архив рубрики ~Лента новостей~: Более быстрый способ оценки энергопотребления ИИ. Архив рубрики ~Лента новостей~: Ученые из Массачусетского технологического института создали крупнейшую в мире коллекцию математических задач олимпиадного уровня и открыли к ней доступ для всех желающих. Архив рубрики ~Лента новостей~: В Миннесоте принят запрет на поддельные фотографии обнаженных тел, созданные с помощью ИИ; разработчикам приложений грозит штраф в размере 500 000 долларов. Архив рубрики ~Лента новостей~: Хакеры украли данные студентов во время взлома образовательного технологического гиганта Instructure. Архив рубрики ~Лента новостей~: Компания Coatue планирует выкупить землю под центры обработки данных, возможно, для Anthropic. Архив рубрики ~Лента новостей~: Маготы поели земли. Они могли защищаться от содержащихся во вредной еде токсинов Архив рубрики ~Лента новостей~: Стратегия Amazon с OpenAI знаменует собой новый этап в войне за облачные технологии — этап, на котором эксклюзивность больше не актуальна. Архив рубрики ~Лента новостей~: GPT-5.5 Награда за биологические ошибки | ОпенАИ