Some checks failed
continuous-integration/drone/push Build is failing
✨ Новый функционал: - scripts/fix-production-env.sh - автоматическое исправление .env для продакшена - make fix-production - команда для быстрого исправления 🎯 Что исправляет: - DJANGO_DEBUG=False (вместо True) - NEXT_PUBLIC_API_URL=http://links.shareon.kr (вместо localhost) - Правильные настройки для продакшена - Пересоздание БД с правильным паролем - Выполнение миграций - Создание суперпользователя 📝 Документация: - PRODUCTION_FIX.md - инструкция по исправлению проблем 🚨 Решает проблему: - password authentication failed for user links_user - undefined в API URL фронтенда - Неправильные настройки DEBUG режима
2.8 KiB
2.8 KiB
Быстрое исправление проблем продакшена
🚨 Проблема: password authentication failed
Причина
Неправильные настройки в .env файле:
DJANGO_DEBUG=True(должно быть False)NEXT_PUBLIC_API_URL=http://localhost:8000(должно быть домен)- Возможно проблема с паролем БД
⚡ Быстрое решение
На сервере выполните:
cd /opt/links
git pull
# Автоматическое исправление
make fix-production
🔧 Ручное исправление
Если автоматическое не сработало:
# 1. Остановить контейнеры
make down
# 2. Создать правильный .env
cat > .env << 'EOF'
# Django настройки
DJANGO_SECRET_KEY=lskjflSDJHFdSFYU7TYOREIFLUDJKFBNKLJSDHFP9Q234856QT80OUAEIYDWSF9PQ28345701784QRTEOYAGWDFLSBAPWO9I485Y
DJANGO_DEBUG=False
DJANGO_ALLOWED_HOSTS=links.shareon.kr,sharon.kr,localhost,127.0.0.1
# База данных PostgreSQL
DATABASE_ENGINE=django.db.backends.postgresql
DATABASE_NAME=links_db
DATABASE_USER=links_user
DATABASE_PASSWORD=links_OASDUIFH90324*ftye(guBJ;O234789SDgfu{
DATABASE_HOST=db
DATABASE_PORT=5432
# PostgreSQL настройки для контейнера
POSTGRES_DB=links_db
POSTGRES_USER=links_user
POSTGRES_PASSWORD=links_OASDUIFH90324*ftye(guBJ;O234789SDgfu{
# Frontend настройки (ВАЖНО!)
NEXT_PUBLIC_API_URL=http://links.shareon.kr
# Для продакшена
DJANGO_SECURE_SSL_REDIRECT=False
DJANGO_SECURE_HSTS_SECONDS=31536000
DJANGO_SECURE_HSTS_INCLUDE_SUBDOMAINS=True
DJANGO_SECURE_HSTS_PRELOAD=True
EOF
# 3. Удалить старые данные БД
docker volume rm links_postgres_data
# 4. Пересобрать и запустить
make build-prod
make up-prod
# 5. Подождать запуска БД
sleep 15
# 6. Выполнить миграции
make migrate
# 7. Создать суперпользователя
make superuser
✅ Проверка
После исправления проверьте:
# Быстрая проверка
make check-nginx
# Проверка API
curl http://links.shareon.kr/api/
# Проверка админки
curl http://links.shareon.kr/admin/
🎯 Результат
После исправления должно работать:
- ✅ Сайт: http://links.shareon.kr
- ✅ API: http://links.shareon.kr/api/
- ✅ Админка: http://links.shareon.kr/admin/
- ✅ Логин через фронтенд
🔍 Диагностика
Если проблемы остались:
# Полная диагностика
make check-nginx-full
# Логи контейнеров
make logs
# Статус контейнеров
make status