Files
pyisu/START_AFTER_FIX.md
2026-03-13 14:39:43 +08:00

4.0 KiB
Raw Blame History

Запуск проекта после исправления ошибок

Исправленные проблемы:

  1. Отсутствие email-validator - добавлен в backend/requirements.txt
  2. Неправильный healthcheck PostgreSQL - изменен на проверку конкретной базы данных
  3. Ошибка инициализации базы данных - добавлены команды CREATE TABLE в init.sql

Инструкция по запуску:

Шаг 1: Убедитесь, что Docker запущен

docker info

Если Docker не запущен, запустите Docker Desktop или Docker daemon.

Шаг 2: Остановите текущие контейнеры и удалите volumes

docker-compose down -v

Внимание: Эта команда удалит все данные базы данных! Если нужно сохранить данные, пропустите -v.

Шаг 3: Пересоберите и запустите проект

docker-compose up --build

Шаг 4: Проверьте работу

  1. Frontend: http://localhost
  2. API документация: http://localhost:8000/docs
  3. Тестовый пользователь: test@example.com / Test1234

Проверка состояния базы данных

Если возникают проблемы с базой данных, проверьте:

1. Логи PostgreSQL:

docker-compose logs postgres

Ищите сообщения:

  • database system is ready to accept connections
  • Database initialized successfully

2. Подключитесь к базе данных:

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. Проверьте тестовые данные:

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"

# Найдите процесс, использующий порт
netstat -ano | findstr :80    # Frontend
netstat -ano | findstr :8000  # Backend
netstat -ano | findstr :5432  # PostgreSQL

# Остановите процесс или измените порты в docker-compose.yml

Проблема: "Connection refused"

Убедитесь, что все сервисы запущены:

docker-compose ps

Все сервисы должны быть в состоянии "Up".

Проблема: "404 Not Found" на фронтенде

Подождите 1-2 минуты, пока соберется фронтенд. Проверьте логи:

docker-compose logs frontend

Логи приложения

# Все сервисы
docker-compose logs -f

# Конкретный сервис
docker-compose logs -f backend
docker-compose logs -f frontend
docker-compose logs -f postgres

Остановка приложения

# Без удаления данных
docker-compose down

# С удалением данных БД
docker-compose down -v

Дополнительная информация