feat: настройка деплоя для работы с внешним PostgreSQL
Some checks reported errors
continuous-integration/drone/push Build encountered an error

- Удален зависимость от встроенного PostgreSQL контейнера в docker-compose.yml
- Добавлена полная документация по настройке внешней БД (EXTERNAL_DB_SETUP.md)
- Обновлен .env.prod с комментариями для внешнего сервера
- Добавлены Makefile команды для проверки и настройки внешней БД
- Обновлен README.md с инструкциями по деплою

Теперь бот использует внешний PostgreSQL сервер:
- Убран depends_on для db сервиса
- DATABASE_URL настраивается через .env.prod
- Поддержка локальных и удаленных БД серверов
- Гибкая конфигурация через переменные окружения
This commit is contained in:
2025-11-17 15:14:29 +09:00
parent 8ec8d942ea
commit 27065b0b03
5 changed files with 228 additions and 34 deletions

View File

@@ -348,10 +348,13 @@ docker-rebuild:
# Быстрое развертывание с нуля
docker-deploy:
@echo "🚀 Полное развертывание в продакшн..."
@echo "🚀 Полное развертывание в продакшн с внешней БД..."
@make docker-setup
@echo ""
@echo "⚠️ Перед продолжением убедитесь, что отредактировали .env.prod!"
@echo "⚠️ Перед продолжением:"
@echo " 1. Настройте внешний PostgreSQL (см. EXTERNAL_DB_SETUP.md)"
@echo " 2. Отредактируйте .env.prod с параметрами внешней БД"
@echo ""
@read -p "Продолжить развертывание? [y/N] " confirm; \
if [ "$$confirm" = "y" ] || [ "$$confirm" = "Y" ]; then \
make docker-build; \
@@ -364,4 +367,29 @@ docker-deploy:
make docker-status; \
else \
echo "❌ Отменено"; \
fi
fi
# Проверка подключения к внешней БД
docker-test-db:
@echo "🔍 Проверка подключения к БД..."
@docker exec -it lottery_bot python -c "\
from src.core.database import engine; \
import asyncio; \
print('✅ Подключение успешно!'); \
asyncio.run(engine.dispose())" || echo "❌ Ошибка подключения!"
# Информация о настройке внешней БД
docker-external-db-help:
@echo "📖 Настройка внешнего PostgreSQL"
@echo "=================================="
@echo ""
@echo "Полная документация: EXTERNAL_DB_SETUP.md"
@echo ""
@echo "Быстрый старт:"
@echo " 1. Создайте БД на внешнем сервере"
@echo " 2. Отредактируйте .env.prod:"
@echo " DATABASE_URL=postgresql+asyncpg://user:pass@host:5432/db"
@echo " 3. make docker-deploy"
@echo ""
@echo "Проверить подключение:"
@echo " make docker-test-db"