# 2026-08-21 — LoadTest: фикс gunicorn (site.app → --chdir /app/site app:app), v2.0.1 _Дата: 2026-08-21. Ветка: master. Инстанс: http-12.containerk8s.dev.nubes.ru (503)._ ## Симптом Инстанс отдавал 503 на всех путях (ingress nginx отвечал, бэкенд недоступен). Локальный прогон образа на ВМ показал падение gunicorn: ``` ModuleNotFoundError: No module named 'site.app'; 'site' is not a package ``` ## Причина Папка `site/` в проекте конфликтует со **стандартным модулем Python `site.py`** (автоматически импортируется интерпретатором при старте). `import site.app` всегда резолвится в stdlib-`site` → ModuleNotFoundError → worker падает → под не Ready → 503. На managed-Flask работало, потому что платформа запускала ФАЙЛ `python site/app.py`, а не импорт пакета `site.app`. ## Фикс `Dockerfile` CMD: ``` gunicorn --bind 0.0.0.0:5000 --chdir /app/site --timeout 300 --workers 1 app:app ``` - `--chdir /app/site` + импорт `app:app` (без пути через `site`) — stdlib-`site` не мешает. - Проверено на ВМ: `docker run naeel/loadtest:v2.0.1` → `/health` = `ok v2.0.0`, HTTP 200. ## Образ - `naeel/loadtest:v2.0.1` — digest `sha256:9ad5cd52...`, запушен в Docker Hub. - В ЛК редеплой с путём `naeel/loadtest:v2.0.1` (новый тег — старый v2.0.0 мог кэшироваться зеркалом). ## Кластеры (наблюдения 2026-08-21) - `k8s-3-sandbox-nubes-ru` — НЕ запускается вообще (баги платформы: script returned exit code 1, No such property: name for class: Script2, поды не работают). - `k8s-4-sandbox-nubes-ru` — запустилось, но ТОЛЬКО с одной аннотацией: `nginx.ingress.kubernetes.io/proxy-body-size: 1024m`. Добавление других аннотаций (таймауты/request-buffering) → падение скрипта платформы (поле `ingress_annotations` «поддерживает пока простые аннотации»).