сервис по поиску фильмов и их закачке через qbittorrent. из клиентов телеграм бот и веб интерфейс
| app | ||
| searchFilms | ||
| .gitignore | ||
| PROJECT_SUMMARY.md | ||
| README.md | ||
findFilms — поиск и скачивание фильмов
Двухстековая архитектура: searchFilms/ на NL-хосте (Голландия, без блокировок), app/ на RU-хосте (Россия). Между собой общаются по HTTP через интернет.
Архитектура
searchFilms/ (NL, 72.56.91.135) internet app/ (RU, 192.168.8.173)
┌─────────────────────────┐ HTTP ┌─────────────────────────────┐
│ tmdb-proxy (:8001) │ ←──────────→ │ movie-search (:8089) │
│ torapi-search (:8443) │ поиск │ telegram-bot │
│ │ │ qBittorrent (:8080) │
└─────────────────────────┘ └─────────────────────────────┘
Поток данных:
- Пользователь ищет фильм → movie-search делает запрос к tmdb-proxy (NL)
- Пользователь ищет торренты → movie-search делает запрос к torapi-search (NL)
- Пользователь добавляет торрент → movie-search отдаёт magnet-ссылку в qBittorrent (локально)
NL-хосту не нужен доступ к RU — только RU ходит к NL.
Быстрый старт
🌍 SearchFilms Stack — на голландском хосте (72.56.91.135)
cd searchFilms
cp .env.example .env # указать TMDB_API_KEY
docker compose up -d --build
Откроет порты:
:8001— TMDB API Proxy:8443— TorAPI Search
🏠 App Stack — на хосте в России
cd app
cp .env.example .env # указать TELEGRAM_BOT_TOKEN
docker compose up -d --build
Откроет:
:8089— веб-интерфейс- Telegram бот (ждёт команды
/start)
Переменные окружения
| Переменная | Где | Назначение |
|---|---|---|
NL_HOST |
app/.env |
IP голландского хоста (по умолч. 72.56.91.135) |
TELEGRAM_BOT_TOKEN |
app/.env |
Токен бота от @BotFather |
TMDB_API_KEY |
search/.env |
Ключ TMDB API |
QBITTORRENT_USERNAME |
app/.env |
Логин qBittorrent |
QBITTORRENT_PASSWORD |
app/.env |
Пароль qBittorrent |
Структура
findFilms/
├── README.md ← этот файл
├── PROJECT_SUMMARY.md ← архитектура
├── searchFilms/ ← NL-стек
│ ├── docker-compose.yml
│ ├── .env.example
│ └── tmdb-proxy/ ← build-зависимость
└── app/ ← RU-стек
├── docker-compose.yml
├── .env.example
├── app.py / telegram_bot.py / templates / Dockerfile / ...