Files
links/scripts/fix-production-env.sh
Andrey K. Choi 9b31fcf193
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 режима
2025-11-02 15:09:10 +09:00

77 lines
2.5 KiB
Bash
Executable File
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/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/"