From 37719ed31e80d069fb4d24bf908e49f103cf64c9 Mon Sep 17 00:00:00 2001 From: erjemin Date: Wed, 1 Apr 2026 00:35:44 +0300 Subject: [PATCH] =?UTF-8?q?fix:=20=D1=80=D0=B0=D0=B7=D1=80=D0=B5=D1=88?= =?UTF-8?q?=D0=B8=D1=82=D1=8C=20=D0=BA=D0=BE=D0=BF=D0=B8=D1=80=D0=BE=D0=B2?= =?UTF-8?q?=D0=B0=D0=BD=D0=B8=D0=B5=20config/nginx=20=D0=B2=20Docker=20(?= =?UTF-8?q?=D0=BD=D1=83=D0=B6=D0=B5=D0=BD=20=D0=B4=D0=BB=D1=8F=20productio?= =?UTF-8?q?n)=20-=20=D0=A3=D0=B4=D0=B0=D0=BB=D0=B5=D0=BD=D0=BE=20=D0=B8?= =?UTF-8?q?=D1=81=D0=BA=D0=BB=D1=8E=D1=87=D0=B5=D0=BD=D0=B8=D0=B5=20config?= =?UTF-8?q?/=20=D0=B8=D0=B7=20.dockerignore=20-=20config/nginx/pet-clones-?= =?UTF-8?q?-external-nginx.conf=20=D1=82=D1=80=D0=B5=D0=B1=D1=83=D0=B5?= =?UTF-8?q?=D1=82=D1=81=D1=8F=20=D0=B4=D0=BB=D1=8F=20Docker=20=D0=BE=D0=B1?= =?UTF-8?q?=D1=80=D0=B0=D0=B7=D0=B0=20-=20=D0=98=D1=81=D0=BF=D0=BE=D0=BB?= =?UTF-8?q?=D1=8C=D0=B7=D1=83=D0=B5=D1=82=D1=81=D1=8F=20=D0=B2=20docker-co?= =?UTF-8?q?mpose.prod.yml=20=D0=B4=D0=BB=D1=8F=20=D0=BD=D0=B0=D1=81=D1=82?= =?UTF-8?q?=D1=80=D0=BE=D0=B9=D0=BA=D0=B8=20nginx=20reverse-proxy?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .dockerignore | 1 - DEVELOPMENT.md | 188 ------------------------------------------------- 2 files changed, 189 deletions(-) delete mode 100644 DEVELOPMENT.md diff --git a/.dockerignore b/.dockerignore index 1bf2cee..fd337f6 100644 --- a/.dockerignore +++ b/.dockerignore @@ -113,7 +113,6 @@ staticfiles/css/brands.css staticfiles/css/all.css # Прочее -config/ .editorconfig *.md diff --git a/DEVELOPMENT.md b/DEVELOPMENT.md deleted file mode 100644 index 87741ae..0000000 --- a/DEVELOPMENT.md +++ /dev/null @@ -1,188 +0,0 @@ -# Rosmorport Test Project - Setup для локальной разработки - -Проект на Django 5.0.4 с использованием Poetry для управления зависимостями. - -## Предварительные требования - -- **Python** 3.12 или выше -- **Poetry** 1.7 или выше ([установка](https://python-poetry.org/docs/#installation)) - -## Быстрый старт - -### 1️⃣ Установка зависимостей - -```bash -# Перейти в корневую директорию проекта -cd /Users/e-serg/PRJ/2024-test-rosmorport - -# Установить все зависимости через poetry -poetry install -``` - -### 2️⃣ Настройка окружения - -Файл `.env` уже создан с базовыми настройками для разработки: - -```bash -# Можешь проверить текущие настройки -cat .env - -# При необходимости отредактируй .env (но для разработки обычно не требуется) -# nano .env -``` - -### 3️⃣ Инициализация БД - -```bash -# Перейти в директорию Django проекта -cd rosmorport_tsts - -# Выполнить миграции (создаст db.sqlite3) -poetry run python manage.py migrate - -# Создать суперпользователя (админ пользователь) -poetry run python manage.py shell << 'EOF' -from django.contrib.auth.models import User -u = User.objects.get_or_create(username='admin', defaults={'email': 'admin@example.com'})[0] -u.set_password('1234') -u.save() -print("Admin user: admin / 1234") -EOF -``` - -### 4️⃣ Запуск приложения - -```bash -# Запустить development сервер -poetry run python manage.py runserver 0.0.0.0:8000 -``` - -Откройся в браузере: **http://localhost:8000** - -Админ панель: **http://localhost:8000/admin** -- Логин: `admin` -- Пароль: `1234` - -## 📁 Структура проекта - -``` -rosmorport_tsts/ -├── manage.py # Django управление -├── db.sqlite3 # БД (создаётся после migrate) -├── public/ -│ ├── static/ # Статические файлы (CSS, JS, images) -│ └── media/ # Загруженные пользователем файлы -├── logs/ # Логи приложения -├── rosmorport_tsts/ -│ ├── settings.py # Конфигурация Django -│ ├── urls.py # URL маршруты -│ ├── views.py # Представления -│ ├── models.py # Модели данных -│ ├── wsgi.py # WSGI приложение -│ └── _my_secret__sample.py # Образец файла для secrets (не использовать) -├── templates-django/ # Django шаблоны -└── ... -``` - -## 🔧 Полезные команды - -### Django команды - -```bash -# Создать новое приложение -poetry run python manage.py startapp app_name - -# Создать миграцию -poetry run python manage.py makemigrations - -# Применить миграции -poetry run python manage.py migrate - -# Django shell (для тестирования ORM) -poetry run python manage.py shell - -# Собрать статические файлы (для production) -poetry run python manage.py collectstatic - -# Запустить тесты -poetry run python manage.py test -``` - -### Poetry команды - -```bash -# Добавить новый пакет -poetry add package_name - -# Добавить пакет только для разработки -poetry add --group dev package_name - -# Обновить зависимости -poetry update - -# Посмотреть установленные пакеты -poetry show -``` - -## 🌍 Переменные окружения - -Все настройки хранятся в файле `.env`. Основные переменные: - -```env -# Режим разработки -DEBUG=True - -# Хосты для доступа -ALLOWED_HOSTS=localhost,127.0.0.1,0.0.0.0 - -# Секретный ключ Django -SECRET_KEY=django-insecure-local-dev-secret-key - -# База данных (SQLite для разработки) -DB_ENGINE=django.db.backends.sqlite3 -DB_NAME=db.sqlite3 -``` - -Для production используй: -- **PostgreSQL**: раскомментируй строки с `DB_ENGINE=django.db.backends.postgresql` -- **MySQL**: раскомментируй строки с `DB_ENGINE=django.db.backends.mysql` - -## 🐳 Docker (для контейнеризации) - -После того как всё будет работать локально, смотри `DOCKER.md` для инструкций по контейнеризации. - -## 🚨 Troubleshooting - -### Ошибка: "Не найдена переменная окружения SECRET_KEY" -**Решение**: Убедись что `.env` файл существует в корневой директории проекта. - -### Ошибка: "port 8000 already in use" -**Решение**: Используй другой порт: -```bash -poetry run python manage.py runserver 0.0.0.0:8001 -``` - -### Ошибка: "No module named 'django'" -**Решение**: Убедись что выполнил `poetry install` в корневой директории проекта. - -### БД не обновляется -**Решение**: Выполни миграции: -```bash -poetry run python manage.py migrate -``` - -## 📝 Дополнительная информация - -- [Django документация](https://docs.djangoproject.com/) -- [Poetry документация](https://python-poetry.org/docs/) -- [PEP 8 - Python Style Guide](https://pep8.org/) - -## 👤 Автор - -Сергей Еремин (e-serg@mail.ru) - ---- - -**Статус**: ✅ Готово к локальной разработке -**Следующий шаг**: Контейнеризация (смотри `DOCKER.md`) -