refactor: split into two stacks - searchFilms/ (NL) and app/ (RU)

This commit is contained in:
vrubelroman 2026-06-03 09:29:09 +00:00
parent 6ef3a10d0d
commit 51348a9d23
36 changed files with 326 additions and 1271 deletions

View file

@ -54,29 +54,35 @@
## 📊 Технические детали
### Архитектура:
### Архитектура (два стека):
```
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ Telegram Bot │ │ Web Interface │ │ qBittorrent │
│ (Docker) │ │ (Docker) │ │ (Host) │
└─────────┬───────┘ └─────────┬───────┘ └─────────┬───────┘
│ │ │
└──────────────────────┼──────────────────────┘
┌─────────────┴─────────────┐
│ FastAPI App │
│ (Movie Search API) │
└─────────────┬─────────────┘
┌─────────────┴─────────────┐
│ TMDB API │
│ (Movie Information) │
└─────────────┬─────────────┘
┌─────────────┴─────────────┐
│ TorAPI │
│ (Torrent Search) │
└───────────────────────────┘
┌─────────────────────────────────────────┐
│ searchFilms/ — NL-хост (72.56.91.135) │
│ ┌──────────┐ ┌──────────────────────┐ │
│ │ tmdb- │ │ torapi-search │ │
│ │ proxy │ │ (rutracker, kinozal, │ │
│ │ (:8001) │ │ rutor, nnmclub) │ │
│ └────┬─────┘ └──────────┬───────────┘ │
│ │ │ │
│ ┌────┴───────────────────┴───────────┐ │
│ │ torapi-qbittorrent (:8444) │ │
│ │ bridge → magnet ссылки │ │
│ └────────────┬────────────────────────┘ │
└───────────────┼──────────────────────────┘
│ интернет
┌───────────────┼──────────────────────────┐
│ │ app/ — RU-хост │
│ ┌────────────┴──────────────────────┐ │
│ │ movie-search (:8089) FastAPI API │ │
│ │ веб-интерфейс + API endpoints │ │
│ └────┬──────────────────────┬───────┘ │
│ │ │ │
│ ┌────┴──────────┐ ┌──────┴────────┐ │
│ │ qBittorrent │ │ telegram-bot │ │
│ │ (192.168.8.177│ │ │ │
│ │ :8080) │ │ @your_bot │ │
│ └───────────────┘ └───────────────┘ │
└─────────────────────────────────────────┘
```
### Поддерживаемые трекеры:
@ -136,24 +142,26 @@ docker ps
## 📁 Структура файлов
```
searchTorrentDownl/
├── app.py # Основное веб-приложение
├── telegram_bot.py # Telegram бот
├── run_telegram_bot.py # Скрипт запуска бота
├── test_telegram_bot.py # Тестирование бота
├── start_all.sh # Скрипт запуска всего проекта
├── requirements.txt # Python зависимости
├── Dockerfile # Docker образ веб-приложения
├── Dockerfile.telegram # Docker образ Telegram бота
├── docker-compose.yml # Docker Compose конфигурация
├── templates/ # HTML шаблоны
│ ├── index.html # Главная страница
│ ├── results.html # Результаты поиска фильмов
│ ├── torrents.html # Результаты поиска торрентов
│ └── error.html # Страница ошибок
├── README.md # Основная документация
├── TELEGRAM_BOT_README.md # Документация Telegram бота
└── PROJECT_SUMMARY.md # Эта сводка
findFilms/
├── README.md # Инструкция по запуску
├── PROJECT_SUMMARY.md # Архитектура проекта
├── .gitignore
├── searchFilms/ # 🌍 NL-стек (Голландия, 72.56.91.135)
│ ├── docker-compose.yml # tmdb-proxy + torapi-search + bridge
│ ├── .env.example
│ └── tmdb-proxy/ # build-зависимость
│ ├── Dockerfile
│ └── tmdb_proxy.py
└── app/ # 🏠 RU-стек (Россия, 192.168.8.173)
├── docker-compose.yml # movie-search + telegram-bot
├── .env.example
├── app.py # FastAPI приложение
├── telegram_bot.py # Telegram бот
├── Dockerfile
├── Dockerfile.telegram
└── templates/ # HTML шаблоны
```
## 🎯 Ключевые особенности