poppy89 commited on
Commit
36f9154
·
verified ·
1 Parent(s): ac46d45

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +26 -9
Dockerfile CHANGED
@@ -1,33 +1,50 @@
1
- # Usa l'immagine base di Python
 
 
2
  FROM python:3.12-slim
3
 
4
- # Installa git e certificati SSL
5
  RUN apt-get update && apt-get install -y \
6
  git \
7
  ca-certificates \
 
8
  && rm -rf /var/lib/apt/lists/*
9
 
10
- # Imposta la directory di lavoro
11
  WORKDIR /app
12
 
13
- # Clona il repository GitHub
 
 
 
 
14
  RUN git clone https://github.com/nzo66/tvproxy .
15
  COPY . .
16
 
17
- # Installa le dipendenze
 
 
 
 
18
  RUN pip install --upgrade pip
19
  RUN pip install --no-cache-dir -r requirements.txt
20
 
21
- # Espone la porta 7860 per Flask/Gunicorn
22
  EXPOSE 7860
23
 
24
- # Comando ottimizzato per avviare il server
 
 
 
 
25
  CMD ["gunicorn", "app:app", \
26
- "-w", "4", \
27
  "--worker-class", "gevent", \
28
  "--worker-connections", "100", \
29
  "-b", "0.0.0.0:7860", \
30
  "--timeout", "120", \
31
  "--keep-alive", "5", \
32
  "--max-requests", "1000", \
33
- "--max-requests-jitter", "100"]
 
 
 
1
+ # Dockerfile per Flask Proxy Server con Gunicorn e logging su stdout/stderr
2
+
3
+ # 1. Usa l'immagine base ufficiale di Python 3.12 slim
4
  FROM python:3.12-slim
5
 
6
+ # 2. Installa git e certificati SSL (per clonare da GitHub e HTTPS)
7
  RUN apt-get update && apt-get install -y \
8
  git \
9
  ca-certificates \
10
+ curl \
11
  && rm -rf /var/lib/apt/lists/*
12
 
13
+ # 3. Imposta la directory di lavoro
14
  WORKDIR /app
15
 
16
+
17
+
18
+
19
+ # 5. Clona il repository (o copia il codice direttamente) nella working directory
20
+ # Se vuoi usare il tuo repository remoto, decommenta la riga git clone:
21
  RUN git clone https://github.com/nzo66/tvproxy .
22
  COPY . .
23
 
24
+ # 4. Pre-crea la directory per i log e rendila scrivibile
25
+ RUN mkdir -p logs \
26
+ && chmod 0777 logs
27
+
28
+ # 6. Aggiorna pip e installa le dipendenze senza cache
29
  RUN pip install --upgrade pip
30
  RUN pip install --no-cache-dir -r requirements.txt
31
 
32
+ # 7. Espone la porta 7860 per Flask/Gunicorn
33
  EXPOSE 7860
34
 
35
+ # 8. Comando ottimizzato per avviare Gunicorn:
36
+ # - 4 worker gevent
37
+ # - connessioni keep-alive
38
+ # - timeout adeguati
39
+ # - logging su stdout/stderr
40
  CMD ["gunicorn", "app:app", \
41
+ "-w", "80", \
42
  "--worker-class", "gevent", \
43
  "--worker-connections", "100", \
44
  "-b", "0.0.0.0:7860", \
45
  "--timeout", "120", \
46
  "--keep-alive", "5", \
47
  "--max-requests", "1000", \
48
+ "--max-requests-jitter", "100", \
49
+ "--access-logfile", "-", \
50
+ "--error-logfile", "-"]