videoDownloadTGbot/vk-downloader/Dockerfile
2026-05-25 16:46:35 +00:00

27 lines
1.1 KiB
Docker

FROM python:3.11-slim
# Устанавливаем зависимости для yt-dlp
RUN apt-get update && apt-get install -y \
ffmpeg \
wget \
&& rm -rf /var/lib/apt/lists/*
WORKDIR /app
# Копируем requirements и устанавливаем зависимости
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
# Копируем код приложения
COPY . .
# Создаем директорию для загрузок
RUN mkdir -p downloads
ENV PYTHONUNBUFFERED=1
# Gunicorn: несколько worker-ов и конечные таймауты, чтобы один зависший
# клиент или запрос не блокировал весь VK downloader.
# Порт берется из переменной окружения PORT (по умолчанию 5000).
CMD sh -c "gunicorn --workers=${GUNICORN_WORKERS:-2} --threads=${GUNICORN_THREADS:-4} --timeout=${GUNICORN_TIMEOUT:-360} --graceful-timeout=${GUNICORN_GRACEFUL_TIMEOUT:-30} --keep-alive=${GUNICORN_KEEP_ALIVE:-5} --bind=${BIND_HOST:-0.0.0.0}:${PORT:-5000} app:app"