Files
bot_vk_ikp_prodagi/Dockerfile
T
Kenik e509c0cfd1 Docker: Dockerfile + docker-compose.yml для запуска бота в контейнере
- Dockerfile (python:3.11-slim): установка зависимостей, запуск bot.py.
- docker-compose.yml: авто-перезапуск (restart: unless-stopped), настройки из .env
  (env_file), база в именованном volume (данные не теряются при пересборке).
- .dockerignore: в образ не тащим .git/тесты/докумен/базу/.env.
- bot.py: путь к БД через DB_PATH (для volume в Docker), по умолчанию — как раньше.
- requirements.txt: убраны неиспользуемые Pillow и openpyxl (образ легче).

pytest passed.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-26 22:32:15 +03:00

23 lines
737 B
Docker

# Образ бота «Кибершкола БАЗА» (VK). Python 3.11.
FROM python:3.11-slim
# Не писать .pyc, логи — сразу в вывод (docker logs)
ENV PYTHONDONTWRITEBYTECODE=1 \
PYTHONUNBUFFERED=1
WORKDIR /app
# Сначала зависимости — так слой кэшируется и пересборка быстрее
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
# Код бота
COPY . .
# Каталог для базы (монтируется как volume, чтобы данные не терялись)
RUN mkdir -p /app/data
ENV DB_PATH=/app/data/bot_database.db
# Запуск бота (long poll, слушает VK)
CMD ["python", "-u", "bot.py"]