Files
subwatcher/compose.yml
wisecolt f1a1f093e6 feat: altyazı otomasyon sistemi MVP'sini ekle
Docker tabanlı mikro servis mimarisi ile altyazı otomasyon sistemi altyapısı kuruldu.

- Core (Node.js): Chokidar dosya izleyici, BullMQ iş kuyrukları, ffprobe medya analizi, MongoDB entegrasyonu ve dosya yazma işlemleri.
- API (Fastify): Mock sağlayıcılar, arşiv güvenliği (zip-slip), altyazı doğrulama, puanlama ve aday seçim motoru.
- UI (React/Vite): İş yönetimi paneli, canlı SSE log akışı, manuel inceleme arayüzü ve sistem ayarları.
- Altyapı: Docker Compose (dev/prod), Redis, Mongo ve çevresel değişken yapılandırmaları.
2026-02-15 23:12:24 +03:00

84 lines
1.6 KiB
YAML

services:
mongo:
image: mongo:7
container_name: subwatcher-mongo
restart: unless-stopped
volumes:
- mongo_data:/data/db
redis:
image: redis:7-alpine
container_name: subwatcher-redis
restart: unless-stopped
volumes:
- redis_data:/data
api:
build:
context: ./services/api
target: prod
container_name: subwatcher-api
restart: unless-stopped
env_file:
- .env
environment:
- NODE_ENV=production
- API_PORT=3002
- TEMP_ROOT=/temp
ports:
- "3002:3002"
volumes:
- temp_data:/temp
depends_on:
- mongo
- redis
core:
build:
context: ./services/core
target: prod
container_name: subwatcher-core
restart: unless-stopped
env_file:
- .env
environment:
- NODE_ENV=production
- CORE_PORT=3001
- MONGO_URI=mongodb://mongo:27017/subwatcher
- REDIS_HOST=redis
- REDIS_PORT=6379
- API_BASE_URL=http://api:3002
- TEMP_ROOT=/temp
- MEDIA_TV_PATH=/media/tv
- MEDIA_MOVIE_PATH=/media/movie
ports:
- "3001:3001"
volumes:
- temp_data:/temp:ro
- ./_media/tv:/media/tv
- ./_media/movie:/media/movie
depends_on:
- mongo
- redis
- api
ui:
build:
context: ./services/ui
target: prod
container_name: subwatcher-ui
restart: unless-stopped
environment:
- NODE_ENV=production
- PORT=3000
- CORE_PROXY_URL=http://core:3001
ports:
- "3000:3000"
depends_on:
- core
volumes:
mongo_data:
redis_data:
temp_data: