# syntax=docker/dockerfile:1

FROM python:3.11-slim-bookworm

# Установка системных зависимостей
RUN apt-get update && apt-get install -y --no-install-recommends \
    ffmpeg \
    build-essential \
    libsndfile1 \
    && rm -rf /var/lib/apt/lists/*

# Рабочая директория
WORKDIR /app

# Копируем зависимости
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt

# Копируем код проекта
COPY . .

# Предзагрузка моделей (без HF_TOKEN диаризация пропускается)
RUN python scripts/download_models.py || echo "Модели будут загружены при первом запуске"

# Создаём директории для данных
RUN mkdir -p uploads processed tmp

# Открываем порт
EXPOSE 8000

# Entrypoint скрипт
COPY scripts/docker-entrypoint.sh /docker-entrypoint.sh
RUN chmod +x /docker-entrypoint.sh

ENTRYPOINT ["/docker-entrypoint.sh"]
CMD ["uvicorn", "backend.main:app", "--host", "0.0.0.0", "--port", "8000"]
