79 lines
3.1 KiB
Markdown
79 lines
3.1 KiB
Markdown
# 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) │
|
|
└─────────────────────────┘ └─────────────────────────────┘
|
|
```
|
|
|
|
**Поток данных:**
|
|
1. Пользователь ищет фильм → movie-search делает запрос к **tmdb-proxy** (NL)
|
|
2. Пользователь ищет торренты → movie-search делает запрос к **torapi-search** (NL)
|
|
3. Пользователь добавляет торрент → movie-search отдаёт magnet-ссылку в **qBittorrent** (локально)
|
|
|
|
NL-хосту **не нужен** доступ к RU — только RU ходит к NL.
|
|
|
|
---
|
|
|
|
## Быстрый старт
|
|
|
|
### 🌍 SearchFilms Stack — на голландском хосте (72.56.91.135)
|
|
|
|
```bash
|
|
cd searchFilms
|
|
cp .env.example .env # указать TMDB_API_KEY
|
|
docker compose up -d --build
|
|
```
|
|
|
|
Откроет порты:
|
|
- `:8001` — TMDB API Proxy
|
|
- `:8443` — TorAPI Search
|
|
|
|
### 🏠 App Stack — на хосте в России
|
|
|
|
```bash
|
|
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 / ...
|
|
```
|