Files
smartsoltech_site/scripts/README.md
Andrew K. Choi d9adac609b chore: reorganize project structure and prepare for deployment
- Organize files into logical directories (docs/, scripts/, tests/)
- Add comprehensive documentation (README, CONTRIBUTING, CHANGELOG)
- Create deployment automation scripts
- Add Docker production configuration
- Update .gitignore and add .dockerignore
- Remove temporary and test files from root
- Improve settings.py with DEBUG from env variable

Added:
- README.md with project overview
- CONTRIBUTING.md for contributors
- CHANGELOG.md for version tracking
- PROJECT_STATUS.md with current state
- docker-compose.prod.yml for production
- nginx.conf for production web server
- scripts/deploy.sh for automated deployment
- scripts/check-config.sh for configuration validation
- scripts/setup-ssl.sh for SSL certificate setup
- docs/DEPLOYMENT.md with detailed deployment guide
- docs/ENV_VARIABLES.md with all environment variables

Moved:
- Documentation to docs/
- Scripts to scripts/
- Test files to tests/

Removed:
- .history/ directory
- Test response JSON files from root
- settings_production.py (merged into settings.py)

This commit prepares the project for:
- Production deployment
- Team collaboration
- Docker containerization
- Proper documentation
2025-11-24 07:12:04 +09:00

155 lines
4.0 KiB
Markdown
Raw 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.

# 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
```