Files
bivekidaybot/DEPLOY.md
Bivekich c00d96b3a1 📝 Обновление документации и настроек репозитория
 Изменения:
- Добавлен файл REPOSITORY.md с информацией о репозитории
- Обновлены ссылки в DEPLOY.md на правильный URL репозитория
- Исправлена проверка TELEGRAM_BOT_TOKEN в deploy.sh
- Добавлена информация о клонировании и работе с репозиторием

🔗 Репозиторий: https://gittea.biveki.ru/BivekiGroup/bivekidaybot
2025-06-26 21:41:36 +03:00

158 lines
4.5 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.

# 🚀 Инструкция по деплою Biveki Day Bot
## 📋 Подготовка к деплою
### 1. Переменные окружения
Убедитесь, что в файле `stack.env` указаны правильные значения:
```env
# Основные настройки приложения
NODE_ENV=production
PORT=3000
TZ=Europe/Moscow
# База данных (ваша облачная PostgreSQL)
DATABASE_URL=postgresql://username:password@host:port/database
# Telegram Bot Token
TELEGRAM_BOT_TOKEN=your_real_bot_token_here
# Дополнительные настройки для продакшена
LOG_LEVEL=info
MAX_CONNECTIONS=10
```
### 2. Обязательные переменные для изменения:
- `DATABASE_URL` - URL вашей облачной PostgreSQL базы данных
- `TELEGRAM_BOT_TOKEN` - токен вашего Telegram бота
## 🐳 Деплой через Docker Compose
### Команды для деплоя:
```bash
# 1. Клонируйте репозиторий (если еще не сделали)
git clone https://gittea.biveki.ru/BivekiGroup/bivekidaybot.git
cd bivekidaybot
# 2. Убедитесь, что stack.env настроен правильно
nano stack.env
# 3. Соберите и запустите контейнер
docker-compose up -d --build
# 4. Проверьте статус
docker-compose ps
# 5. Посмотрите логи
docker-compose logs -f bivekidaybot
```
### Управление контейнером:
```bash
# Остановить контейнер
docker-compose down
# Перезапустить контейнер
docker-compose restart bivekidaybot
# Обновить приложение
git pull
docker-compose up -d --build
# Посмотреть логи
docker-compose logs -f bivekidaybot
# Войти в контейнер для отладки
docker-compose exec bivekidaybot sh
```
## 🔍 Проверка работоспособности
1. **Health Check**: `http://your-server:3000/health`
2. **Telegram Bot**: Отправьте `/start` боту
3. **Логи**: `docker-compose logs bivekidaybot`
## 📊 Мониторинг
### Проверка статуса контейнера:
```bash
docker-compose ps
```
### Просмотр ресурсов:
```bash
docker stats bivekidaybot-app
```
### Проверка health check:
```bash
curl http://localhost:3000/health
```
## 🔧 Настройки для продакшена
### Рекомендуемые изменения в stack.env:
```env
# Для продакшена рекомендуется отключить synchronize в TypeORM
NODE_ENV=production
# Настройте правильный часовой пояс
TZ=Europe/Moscow
# Ограничьте количество подключений к БД
MAX_CONNECTIONS=10
```
## 🚨 Устранение неполадок
### Проблемы с базой данных:
1. Проверьте правильность `DATABASE_URL`
2. Убедитесь, что БД доступна извне
3. Проверьте настройки SSL для облачной БД
### Проблемы с Telegram ботом:
1. Проверьте правильность `TELEGRAM_BOT_TOKEN`
2. Убедитесь, что токен активен
3. Проверьте, что бот не используется в другом месте
### Логи и отладка:
```bash
# Подробные логи
docker-compose logs -f --tail=100 bivekidaybot
# Войти в контейнер
docker-compose exec bivekidaybot sh
# Перезапуск с полной пересборкой
docker-compose down
docker-compose up -d --build --force-recreate
```
## 🔄 Обновление приложения
```bash
# 1. Остановить контейнер
docker-compose down
# 2. Получить последние изменения
git pull
# 3. Пересобрать и запустить
docker-compose up -d --build
# 4. Проверить статус
docker-compose ps
docker-compose logs -f bivekidaybot
```
## 📝 Примечания
- База данных не включена в Docker Compose, так как используется облачная
- Контейнер автоматически перезапускается при сбоях
- Health check проверяет работоспособность каждые 30 секунд
- Логи ротируются автоматически (максимум 3 файла по 10MB)