Spaces:
Running
Running
| # Dockerfile для Hugging Face Spaces | |
| # Оптимизирован для CPU | |
| FROM python:3.10-slim | |
| WORKDIR /app | |
| # Системные зависимости для OpenCV и SAM2 | |
| RUN apt-get update && apt-get install -y \ | |
| git \ | |
| wget \ | |
| build-essential \ | |
| libglib2.0-0 \ | |
| libsm6 \ | |
| libxext6 \ | |
| libxrender-dev \ | |
| libgomp1 \ | |
| libgl1 \ | |
| && rm -rf /var/lib/apt/lists/* | |
| # Копируем requirements | |
| COPY requirements.txt . | |
| # Устанавливаем Python зависимости | |
| RUN pip install --no-cache-dir -r requirements.txt | |
| # Копируем код приложения | |
| COPY app.py . | |
| COPY download_model.py . | |
| COPY web_demo.html . | |
| COPY web_demo_advanced.html . | |
| # Копируем и устанавливаем SAM2 | |
| COPY sam2_repo sam2_repo | |
| RUN cd sam2_repo && pip install --no-cache-dir -e . | |
| # Создаем папку для моделей | |
| RUN mkdir -p checkpoints | |
| # Скачиваем large модель (~800MB, но лучшее качество) | |
| RUN python download_model.py large | |
| # Hugging Face Spaces использует порт 7860 | |
| ENV PORT=7860 | |
| EXPOSE 7860 | |
| # Запуск (app.py сам читает PORT из env) | |
| CMD ["python", "app.py"] | |