Задача 002: Инфраструктура Docker
Приоритет: 🟡 Средний Статус: 📅 Запланировано Целевая версия: v0.3.0
📝 Описание
Предоставить готовую конфигурацию Docker при генерации нового проекта. Чтобы поддерживать чистоту в корне проекта, все файлы, связанные с деплоем, будут вынесены в отдельную директорию deploy/.
🎯 Цели
- Изоляция инфраструктуры: Создать папку
deploy/в корне проекта. - Шаблоны: Разместить
Dockerfile.j2иdocker-compose.yml.j2внутри папкиdeploy/. - Окружение: Убедиться, что Docker Compose корректно подтягивает переменные из
.env, находящегося в корне. - Управление контекстом: Настроить Docker на использование корня проекта как контекста сборки, при сохранении самих конфигов в
deploy/.
🛠 Технические заметки
- Базовый образ:
python:3.12-slim. - Команда запуска:
docker-compose -f deploy/docker-compose.yml up. - Использование non-root пользователя внутри контейнера для безопасности.
✅ Критерии готовности
- [ ] Проект содержит директорию
deploy/сDockerfileиdocker-compose.yml. - [ ] Бот успешно запускается, используя конфигурацию из папки
deploy/. - [ ] Подключения к Redis и БД работают "из коробки" через сети compose.