Старт

This commit is contained in:
2026-03-13 14:39:43 +08:00
commit a2cc480644
88 changed files with 18526 additions and 0 deletions

132
START_AFTER_FIX.md Normal file
View File

@@ -0,0 +1,132 @@
# Запуск проекта после исправления ошибок
## Исправленные проблемы:
1. **Отсутствие email-validator** - добавлен в `backend/requirements.txt`
2. **Неправильный healthcheck PostgreSQL** - изменен на проверку конкретной базы данных
3. **Ошибка инициализации базы данных** - добавлены команды CREATE TABLE в `init.sql`
## Инструкция по запуску:
### Шаг 1: Убедитесь, что Docker запущен
```bash
docker info
```
Если Docker не запущен, запустите Docker Desktop или Docker daemon.
### Шаг 2: Остановите текущие контейнеры и удалите volumes
```bash
docker-compose down -v
```
**Внимание:** Эта команда удалит все данные базы данных! Если нужно сохранить данные, пропустите `-v`.
### Шаг 3: Пересоберите и запустите проект
```bash
docker-compose up --build
```
### Шаг 4: Проверьте работу
1. **Frontend:** http://localhost
2. **API документация:** http://localhost:8000/docs
3. **Тестовый пользователь:** test@example.com / Test1234
## Проверка состояния базы данных
Если возникают проблемы с базой данных, проверьте:
### 1. Логи PostgreSQL:
```bash
docker-compose logs postgres
```
Ищите сообщения:
- `database system is ready to accept connections`
- `Database initialized successfully`
### 2. Подключитесь к базе данных:
```bash
docker-compose exec postgres psql -U auth_user -d auth_learning -c "\dt"
```
Ожидаемый вывод (4 таблицы):
```
List of relations
Schema | Name | Type | Owner
--------+-----------------+-------+----------
public | courses | table | auth_user
public | favorite_courses| table | auth_user
public | progress | table | auth_user
public | users | table | auth_user
```
### 3. Проверьте тестовые данные:
```bash
docker-compose exec postgres psql -U auth_user -d auth_learning -c "SELECT COUNT(*) FROM users;"
docker-compose exec postgres psql -U auth_user -d auth_learning -c "SELECT COUNT(*) FROM courses;"
```
Ожидаемый вывод:
```
count
-------
1
```
```
count
-------
10
```
## Решение возможных проблем
### Проблема: "Port already in use"
```bash
# Найдите процесс, использующий порт
netstat -ano | findstr :80 # Frontend
netstat -ano | findstr :8000 # Backend
netstat -ano | findstr :5432 # PostgreSQL
# Остановите процесс или измените порты в docker-compose.yml
```
### Проблема: "Connection refused"
Убедитесь, что все сервисы запущены:
```bash
docker-compose ps
```
Все сервисы должны быть в состоянии "Up".
### Проблема: "404 Not Found" на фронтенде
Подождите 1-2 минуты, пока соберется фронтенд. Проверьте логи:
```bash
docker-compose logs frontend
```
## Логи приложения
```bash
# Все сервисы
docker-compose logs -f
# Конкретный сервис
docker-compose logs -f backend
docker-compose logs -f frontend
docker-compose logs -f postgres
```
## Остановка приложения
```bash
# Без удаления данных
docker-compose down
# С удалением данных БД
docker-compose down -v
```
## Дополнительная информация
- Полная документация: [README.md](README.md)
- Быстрый старт: [QUICKSTART.md](QUICKSTART.md)
- Исправление email-validator: [FIX_INSTRUCTIONS.md](FIX_INSTRUCTIONS.md)