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 режима
77 lines
2.5 KiB
Bash
Executable File
77 lines
2.5 KiB
Bash
Executable File
#!/bin/bash
|
||
# scripts/fix-production-env.sh - Исправление .env для продакшена
|
||
|
||
echo "🔧 Исправление .env файла для продакшена"
|
||
echo "========================================"
|
||
|
||
# Создание правильного .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
|
||
|
||
# Опциональные настройки
|
||
# DJANGO_EMAIL_BACKEND=django.core.mail.backends.console.EmailBackend
|
||
# DJANGO_EMAIL_HOST=
|
||
# DJANGO_EMAIL_PORT=587
|
||
# DJANGO_EMAIL_HOST_USER=
|
||
# DJANGO_EMAIL_HOST_PASSWORD=
|
||
# DJANGO_EMAIL_USE_TLS=True
|
||
EOF
|
||
|
||
echo "✅ .env файл обновлен для продакшена"
|
||
echo ""
|
||
echo "🔄 Перезапуск контейнеров..."
|
||
|
||
# Остановка контейнеров
|
||
make down
|
||
|
||
# Удаление старого volume с БД (если пароль изменился)
|
||
echo "🗄️ Очистка старых данных БД..."
|
||
docker volume rm links_postgres_data 2>/dev/null || true
|
||
|
||
# Пересборка и запуск
|
||
echo "🏗️ Пересборка контейнеров..."
|
||
make build-prod
|
||
|
||
echo "🚀 Запуск контейнеров..."
|
||
make up-prod
|
||
|
||
echo "⏳ Ожидание запуска БД..."
|
||
sleep 15
|
||
|
||
echo "🗄️ Выполнение миграций..."
|
||
make migrate
|
||
|
||
echo "👤 Создание суперпользователя..."
|
||
echo "Создайте суперпользователя для входа в админку:"
|
||
make superuser
|
||
|
||
echo ""
|
||
echo "✅ Готово! Проверьте работу:"
|
||
echo "• Сайт: http://links.shareon.kr"
|
||
echo "• API: http://links.shareon.kr/api/"
|
||
echo "• Админка: http://links.shareon.kr/admin/" |