# Docker & Celery Setup - Быстрый Старт ## 🚀 Начало Работы ### Шаг 1: Подготовка ```bash # Клонировать репозиторий git clone cd TG_autoposter # Скопировать конфигурацию cp .env.example .env # Отредактировать .env с реальными значениями nano .env ``` ### Шаг 2: Запуск Используйте Makefile: ```bash make up ``` Или Docker Compose напрямую: ```bash docker-compose up -d ``` ### Шаг 3: Проверка ```bash # Статус контейнеров make ps # или docker-compose ps # Показать логи make logs # или docker-compose logs -f ``` ## 📊 Мониторинг ### Flower (Веб-интерфейс Celery) Откройте в браузере: **http://localhost:5555** Показывает: - 🔴 Активные задачи - ⏰ Запланированные задачи - 🖥️ Статус рабочих - 📈 Статистику ```bash make flower ``` ## 🔧 Основные Команды ### Docker ```bash make up # Запустить make down # Остановить make build # Пересобрать образы make restart # Перезагрузить make clean # Удалить контейнеры make ps # Статус make logs # Логи make shell # Подключиться к боту ``` ### База Данных ```bash make db-init # Инициализировать БД make db-backup # Создать backup make db-restore # Восстановить из backup ``` ### Celery ```bash make status # Статус Celery docker-compose exec bot celery -A app.celery_config inspect active ``` ## 📝 Примеры Использования ### Отправить сообщение в несколько групп ```bash # Через веб-интерфейс бота: /send ``` ### Расписать рассылку ```bash # Через команду /schedule в боте: /schedule add 1 10 "0 9 * * *" # Отправит сообщение 1 в группу 10 ежедневно в 9:00 UTC ``` ### Проверить статус задач Перейти на **http://localhost:5555** и смотреть в реальном времени. ## 🗂️ Структура Сервисов ``` ┌─ postgres:5432 БД ├─ redis:6379 Cache & Message Broker ├─ bot:8000 Telegram Bot ├─ celery_worker_* Рабочие для задач ├─ celery_beat Планировщик └─ flower:5555 Веб-интерфейс мониторинга ``` ## 🐛 Устранение Проблем ### Бот не отвечает ```bash make logs-bot make restart ``` ### Celery не выполняет задачи ```bash make status make logs-celery ``` ### PostgreSQL проблемы ```bash docker-compose exec postgres psql -U autoposter -d autoposter_db ``` ### Redis не отвечает ```bash docker-compose exec redis redis-cli ping ``` ## 📚 Полная Документация Смотрите [DOCKER_CELERY.md](docs/DOCKER_CELERY.md) для подробного руководства. ## 🔗 Важные Ссылки - Flower: http://localhost:5555 - PostgreSQL: localhost:5432 - Redis: localhost:6379 - Bot API: http://localhost:8000 ## 💾 Резервные Копии ```bash # Backup make db-backup # Restore make db-restore ``` ## 🛑 Остановка ```bash make down ``` --- **Нужна помощь?** Смотрите документацию в `/docs/DOCKER_CELERY.md`