Причины:
- В production логи nginx хранятся в системной папке хоста
- В dev образ постоянно перестраивается, логи не накапливаются
- Логи не нужны для хранения в контейнере
Удалено:
- Папка logs из корня проекта
- mkdir -p /app/logs из Dockerfile
- Монтирование logs из docker-compose.yml и docker-compose.prod.yml
- Переменная TOUCH_RELOAD из settings.py и .env файлов
Результат: более clean и минималистичная структура проекта
- Проблема: при запуске manage.py из rosmorport_tsts/ относительный путь database/db.sqlite3 не работал
- Решение: теперь путь всегда строится как абсолютный от PROJECT_ROOT
- БД корректно находится в database/db.sqlite3 в корне проекта
- Протестировано: проект запускается без ошибок, БД содержит 17 записей из production
Структура БД скопирована с production сервера.
- Добавлена переменная окружения ADMIN_URL для динамического управления URL админки
- Дефолтное значение в коде: 'admin/' (стандартное, безопасное)
- Пользователь может переопределить через .env для скрытия в production
- Примечание: никогда не коммитьте реальные значения секретов в .env.example
Это позволяет:
- Легко скрывать админку от автоматических сканеров
- Использовать разные URL для dev/production
- Не хранить секреты в коде
- Исправлены пути STATICFILES_DIRS и MEDIA_ROOT (они должны быть относительно корня проекта, а не settings.py)
- Добавлена раздача STATIC_URL в urls.py для DEBUG режима
- Проверено что все статические файлы (CSS, JS) отдаются с кодом 200
Использование:
- Media: ❌ Не используется (нет FileField/ImageField в моделях)
- Static: ✅ Используется (CSS, JS, images в public/static)
Статика теперь корректно работает в dev окружении.
- Добавлена конфигурация через poetry (pyproject.toml + poetry.lock)
- Переделана система конфигурации Django с .env переменными
- Добавлен файл .env для локальной разработки (SQLite БД)
- Обновлен settings.py для работы с переменными окружения
- Создана документация по локальной разработке (DEVELOPMENT.md)
- Подготовлена инфраструктура для Docker (Dockerfile, docker-compose.yml)
- Обновлен .gitignore для Python/Django проекта
Проект работает локально с миграциями и админ пользователем (admin/1234).