# 🚀 Деплой ProtekaAuto CMS ## 📋 Что исправлено ### ✅ Проблемы со стилями - Исправлен `globals.css` для совместимости с Tailwind CSS v4 - Обновлен синтаксис тем и цветовых переменных - Стили теперь корректно загружаются в продакшене ### ✅ Docker Compose конфигурация - Добавлены все переменные окружения из `stack.env` - Исправлена структура и комментарии - Добавлена поддержка `PARTSINDEX_API_KEY` - Добавлен динамический порт через `CMS_PORT` ## 🔧 Подготовка к деплою ### 1. Настройка переменных окружения Скопируйте `stack.env` и настройте все переменные: ```bash cp stack.env.example stack.env nano stack.env ``` **Обязательные переменные для настройки:** - `DATABASE_URL` - подключение к PostgreSQL - `NEXTAUTH_SECRET` - секретный ключ для авторизации - `JWT_SECRET` - секретный ключ для JWT токенов - `NEXTAUTH_URL` - URL вашей CMS админки - AWS S3 настройки для файлов - API ключи для интеграций ### 2. Проверка конфигурации ```bash # Проверка SMS конфигурации npm run check:sms # Проверка Docker Compose ./scripts/test-docker-compose.sh # Проверка сборки npm run build ``` ## 🐳 Деплой через Docker ### Запуск CMS ```bash # Сборка и запуск docker-compose up -d # Просмотр логов docker-compose logs -f # Остановка docker-compose down ``` ### Обновление ```bash # Обновление кода git pull # Пересборка и перезапуск docker-compose down docker-compose up -d --build # Или используйте готовый скрипт ./scripts/update-container.sh ``` ## 📊 Мониторинг ### Проверка состояния ```bash # Статус контейнеров docker-compose ps # Использование ресурсов docker stats # Логи в реальном времени docker-compose logs -f --tail=100 ``` ### Health Check CMS доступна по адресу: `http://localhost:3000/api/health` ## 🔧 Полезные команды ### База данных ```bash # Генерация Prisma клиента npm run db:generate # Применение изменений схемы npm run db:push # Prisma Studio (GUI для БД) npm run db:studio ``` ### Разработка ```bash # Локальный запуск с hot reload npm run dev # Линтинг npm run lint # Тестирование сборки npm run build ``` ## 🚨 Troubleshooting ### Проблемы со стилями - Убедитесь, что используется Tailwind CSS v4 - Проверьте `globals.css` и `tailwind.config.js` - Очистите кеш: `rm -rf .next` ### Проблемы с Docker - Проверьте `stack.env` файл - Убедитесь, что все переменные заданы - Проверьте логи: `docker-compose logs` ### Проблемы с базой данных - Проверьте `DATABASE_URL` - Убедитесь, что PostgreSQL доступен - Запустите `npm run db:push` ## 📝 Переменные окружения Полный список переменных в `stack.env`: ### База данных - `DATABASE_URL` - строка подключения к PostgreSQL ### Авторизация - `NEXTAUTH_SECRET` - секрет для NextAuth - `JWT_SECRET` - секрет для JWT - `NEXTAUTH_URL` - URL админки ### AWS S3 - `AWS_REGION`, `AWS_ACCESS_KEY_ID`, `AWS_SECRET_ACCESS_KEY` - `AWS_BUCKET_NAME`, `AWS_S3_BUCKET`, `S3_ENDPOINT` ### SMS API - `BEELINE_SMS_USER`, `BEELINE_SMS_PASS`, `BEELINE_SMS_SENDER` ### Интеграции - Laximo API: `LAXIMO_LOGIN`, `LAXIMO_PASSWORD` - YooKassa: `YOOKASSA_SHOP_ID`, `YOOKASSA_SECRET_KEY` - AutoEuro: `AUTOEURO_API_KEY` - PartsAPI: `PARTSAPI_*_KEY` - PartsIndex: `PARTSINDEX_API_KEY` - Яндекс: `YANDEX_*_API_KEY` ## 🎯 Следующие шаги 1. ✅ Настройте все переменные в `stack.env` 2. ✅ Запустите `npm run build` для проверки 3. ✅ Запустите `docker-compose up -d` 4. ✅ Проверьте доступность по `http://localhost:3000` 5. ✅ Настройте reverse proxy (nginx) для продакшена 6. ✅ Настройте SSL сертификаты 7. ✅ Настройте бэкапы базы данных