# Scripts Скрипты для управления и деплоя SmartSolTech. ## Доступные скрипты ### 🚀 deploy.sh Автоматический деплой приложения в Docker. **Использование:** ```bash chmod +x deploy.sh ./deploy.sh ``` **Что делает:** - Проверяет наличие .env файла - Останавливает существующие контейнеры - Собирает Docker образы - Запускает PostgreSQL - Применяет миграции БД - Собирает статику - Запускает все сервисы --- ### 🔍 check-config.sh Проверка конфигурации проекта перед деплоем. **Использование:** ```bash chmod +x check-config.sh ./check-config.sh ``` **Проверяет:** - Наличие .env файла и обязательных переменных - Установку Docker и Docker Compose - Наличие необходимых файлов - Права доступа к скриптам --- ### 🔒 setup-ssl.sh Настройка SSL сертификатов Let's Encrypt для production. **Использование:** ```bash chmod +x setup-ssl.sh ./setup-ssl.sh your-domain.com admin@your-domain.com ``` **Параметры:** - `domain` - Ваш домен (например, smartsoltech.kr) - `email` - Email для уведомлений Let's Encrypt **Что делает:** - Создает директории для сертификатов - Запрашивает SSL сертификат через Certbot - Генерирует конфигурацию Nginx с HTTPS - Настраивает автоматическое обновление сертификатов --- ### 📱 update_telegram_token.py Обновление токена Telegram бота в базе данных. **Использование:** ```bash # Внутри Docker контейнера docker-compose exec web python scripts/update_telegram_token.py # Или напрямую с Python python scripts/update_telegram_token.py ``` **Что делает:** - Проверяет валидность нового токена - Обновляет токен в базе данных - Сохраняет информацию о боте **Получение токена:** 1. Откройте [@BotFather](https://t.me/BotFather) в Telegram 2. Отправьте `/mybots` 3. Выберите своего бота 4. Нажмите "API Token" --- ### 🔄 update_bot_token.sh Shell скрипт для обновления токена бота (обертка для Python скрипта). **Использование:** ```bash chmod +x update_bot_token.sh ./update_bot_token.sh "YOUR_BOT_TOKEN" ``` --- ## Общие рекомендации ### Права доступа Все скрипты должны быть исполняемыми: ```bash chmod +x scripts/*.sh ``` ### Production деплой Для production используйте: ```bash # 1. Проверьте конфигурацию ./scripts/check-config.sh # 2. Настройте SSL (опционально) ./scripts/setup-ssl.sh your-domain.com your-email@example.com # 3. Запустите деплой с production конфигурацией docker-compose -f docker-compose.prod.yml up -d ``` ### Development Для разработки: ```bash # Используйте обычный docker-compose.yml ./scripts/deploy.sh ``` ## Troubleshooting ### Скрипт не запускается ```bash # Проверьте права доступа ls -la scripts/ # Добавьте права на выполнение chmod +x scripts/*.sh ``` ### Ошибка "command not found" ```bash # Запускайте скрипты с ./ ./scripts/deploy.sh # Или из корня проекта bash scripts/deploy.sh ``` ### Docker команды не работают Убедитесь, что Docker и Docker Compose установлены: ```bash docker --version docker-compose --version ```