# LoadTest — Flask-сервис проверки загрузки файлов/сообщений.
# Образ: naeel/loadtest (Docker Hub, публичный — требование платформы Nubes).
#
# Деплой через «Простой HTTP контейнер»:
#   - путь до образа: naeel/loadtest:<tag>
#   - порт берётся из EXPOSE (ровно один) — 5000
#   - переменные пода (env) — задаются в ЛК при создании (если нужны)

FROM python:3.12-slim

WORKDIR /app

COPY requirements.txt .

RUN pip install --no-cache-dir -r requirements.txt

COPY site /app/site

EXPOSE 5000

# gunicorn вместо dev-сервера Flask:
#   --timeout 300 — чтобы платформа/шлюз не резали долгие POST
#   --workers 1   — однорепликовый тест-сервис, больше не нужно
#   ВАЖНО: --chdir /app/site + app:app (НЕ site.app:app!) — папка site
#   конфликтует со stdlib-модулем Python site.py (автозагружается при старте),
#   поэтому import site.app всегда падает с ModuleNotFoundError.
CMD ["gunicorn", "--bind", "0.0.0.0:5000", "--chdir", "/app/site", "--timeout", "300", "--workers", "1", "app:app"]
