# 🚀 Быстрый деплой бота с внешним PostgreSQL ## Шаг 1: Подготовка PostgreSQL ```bash # Подключитесь к PostgreSQL psql -U postgres # Создайте пользователя и БД CREATE USER bot_user WITH PASSWORD 'secure_password_here'; CREATE DATABASE lottery_bot OWNER bot_user; GRANT ALL PRIVILEGES ON DATABASE lottery_bot TO bot_user; # Выход \q ``` ## Шаг 2: Настройка .env.prod ```bash # Скопируйте пример cp .env.prod.example .env.prod # Отредактируйте .env.prod nano .env.prod ``` **Заполните:** ```env # Telegram BOT_TOKEN=your_bot_token_from_botfather ADMIN_IDS=123456789,987654321 # PostgreSQL (замените на свои данные) DATABASE_URL=postgresql+asyncpg://bot_user:secure_password@localhost:5432/lottery_bot ``` ## Шаг 3: Деплой ### Вариант A: Docker (рекомендуется) ```bash # Билд и запуск make docker-deploy # Или вручную: docker-compose build docker-compose up -d docker exec -it lottery_bot alembic upgrade head ``` ### Вариант B: Локально ```bash # Установка make install # Миграции source .venv/bin/activate alembic upgrade head # Запуск make bot-start ``` ## Шаг 4: Проверка ```bash # Проверить подключение к БД make docker-test-db # Логи make docker-logs # Статус make docker-status ``` ## 📋 Полезные команды ```bash # Остановка docker-compose down # Перезапуск docker-compose restart # Логи в реальном времени docker-compose logs -f bot # Бэкап БД pg_dump -U bot_user lottery_bot > backup.sql # Восстановление БД psql -U bot_user lottery_bot < backup.sql ``` ## 🔥 Проблемы? См. [EXTERNAL_DB_SETUP.md](./EXTERNAL_DB_SETUP.md) раздел "Troubleshooting"