Перейти к основному содержимому

Deployment

NeoMovies API v2 деплоится на Vercel как набор Rust serverless-функций (api/*.rs) и одновременно собирает документацию Docusaurus из docs/.

Требования

1. Локальная проверка

cp .env.example .env
cargo check
cargo test --lib

2. Локальный запуск API

cargo run --bin server

Локальный API по умолчанию: http://localhost:3000/api/v1.

Порт можно задать через:

  • LOCAL_SERVER_PORT (приоритетный)
  • PORT

Пример:

LOCAL_SERVER_PORT=3001 cargo run --bin server

Для локального просмотра документации запустите Docusaurus отдельно:

npm --prefix docs ci
npm --prefix docs run start

Локальный адрес docs по умолчанию: http://localhost:3000/docs.

3. Деплой на Vercel

vercel deploy --prod

vercel.json содержит:

  • buildCommand: npm --prefix docs ci && npm --prefix docs run build
  • rewrites для docs (/) и API (/api/v1/*)

Переменные окружения

ПеременнаяОбязательнаяОписание
MONGO_URIMongoDB connection string
JWT_SECRETJWT signing secret
MONGO_DB_NAMEDB name (default: neomovies)
KPAPI_KEYKinopoisk API key
KPAPI_BASE_URLKP API base URL
NEO_ID_URLNeo ID base URL
NEO_ID_API_KEYNeo ID API key
NEO_ID_SITE_IDNeo ID site ID
ALLOHA_TOKENAlloha token
LUMEX_URLLumex embed base URL
VIBIX_HOSTVibix host
VIBIX_TOKENVibix token
HDVB_TOKENHDVB token
COLLAPS_API_HOSTCollaps API host
COLLAPS_TOKENCollaps token
REDAPI_BASE_URLTorrent API base URL

Маршруты после деплоя на Vercel

  • / — сайт документации (только на Vercel)
  • /api/v1/* — REST API