tvproxy / Dockerfile
paiutz's picture
Create Dockerfile
2283a4c verified
# Dockerfile per HuggingFace Spaces - TVProxy con Gunicorn
# 1. Usa l'immagine base ufficiale di Python 3.12 slim
FROM python:3.12-slim
# 2. Installa git e certificati SSL (per clonare da GitHub e HTTPS)
RUN apt-get update && apt-get install -y \
git \
ca-certificates \
curl \
&& rm -rf /var/lib/apt/lists/*
# 3. Imposta la directory di lavoro
WORKDIR /app
# 4. Clona il repository da GitHub
RUN git clone https://github.com/nzo66/tvproxy.git .
# 5. Aggiorna pip e installa le dipendenze senza cache
RUN pip install --upgrade pip
RUN pip install --no-cache-dir -r requirements.txt
# 6. Espone la porta 7860 per HuggingFace Spaces
EXPOSE 7860
# 7. Comando per avviare Gunicorn ottimizzato per HuggingFace Spaces
# - 2 worker (limite per Spaces gratuiti)
# - Worker class sync (più stabile per proxy HTTP)
# - Timeout adeguati per streaming
# - Logging su stdout/stderr
CMD ["gunicorn", "app:app", \
"-w", "2", \
"--worker-class", "sync", \
"-b", "0.0.0.0:7860", \
"--timeout", "120", \
"--keep-alive", "5", \
"--max-requests", "500", \
"--max-requests-jitter", "50", \
"--access-logfile", "-", \
"--error-logfile", "-", \
"--log-level", "info"]