Spaces:
Paused
Paused
| # Fase 1: Build | |
| # Usa un'immagine Python con base Debian per FFmpeg completo | |
| FROM python:3.11-bookworm | |
| # Installa git e FFmpeg (versione completa con DASH/CENC) | |
| RUN apt-get update && apt-get install -y git ffmpeg && rm -rf /var/lib/apt/lists/* | |
| # Imposta la directory di lavoro all'interno del container. | |
| WORKDIR /app | |
| # CLONA il repository. Questo comando scarica TUTTI i file, incluso requirements.txt. | |
| RUN git clone https://github.com/nzo66/EasyProxy . | |
| # Installa le dipendenze Python. | |
| RUN pip install --no-cache-dir -r requirements.txt | |
| # Copia il resto del codice dell'applicazione nella directory di lavoro. | |
| # Metadata dell'immagine OCI (Open Container Initiative) corretti. | |
| LABEL org.opencontainers.image.title="HLS Proxy Server" | |
| LABEL org.opencontainers.image.description="Server proxy universale per stream HLS con supporto Vavoo, DLHD e playlist builder" | |
| LABEL org.opencontainers.image.version="2.5.0" | |
| LABEL org.opencontainers.image.source="https://github.com/nzo66/EasyProxy" | |
| # Esponi la porta su cui l'applicazione è in ascolto. | |
| EXPOSE 7860 | |
| # Comando per avviare l'app in produzione con Gunicorn | |
| # Usa sh -c per permettere l'espansione della variabile d'ambiente $PORT | |
| CMD sh -c "gunicorn --bind 0.0.0.0:${PORT:-7860} --workers 4 --worker-class aiohttp.worker.GunicornWebWorker --timeout 120 --graceful-timeout 120 app:app" |