Arnel Gwen Nuqui commited on
Commit
f7645ea
·
1 Parent(s): 9b4e910

Fix Hugging Face build (bullseye base + health check)

Browse files
Files changed (1) hide show
  1. Dockerfile +15 -18
Dockerfile CHANGED
@@ -1,36 +1,33 @@
1
- # ==============================================================
2
- # ✅ Hugging Face Dockerfile for Flask + TensorFlow + MediaPipe
3
- # ==============================================================
 
4
 
5
- FROM python:3.10-slim
6
-
7
- # Prevent log buffering
8
  ENV PYTHONUNBUFFERED=1
 
 
9
 
10
- # Install system dependencies
11
- RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y \
12
  libgl1 \
13
  libglib2.0-0 \
14
  libatlas-base-dev \
15
  ffmpeg \
16
- && apt-get clean && rm -rf /var/lib/apt/lists/*
 
17
 
18
- # Set working directory
19
  WORKDIR /app
20
 
21
- # Copy requirements first
22
  COPY requirements.txt .
23
 
24
- # Install Python dependencies with retry logic
25
- RUN pip install --upgrade pip
26
- RUN pip install --no-cache-dir -r requirements.txt || \
27
- (sleep 10 && pip install --no-cache-dir -r requirements.txt)
28
 
29
- # Copy application files
30
  COPY . .
31
 
32
- # Expose port 7860 for Hugging Face
33
  EXPOSE 7860
34
 
35
- # Run Flask app
 
 
36
  CMD ["python", "app.py"]
 
1
+ # ============================================
2
+ # ✅ Hugging Face Flask + TensorFlow + MediaPipe
3
+ # ============================================
4
+ FROM python:3.10-bullseye
5
 
 
 
 
6
  ENV PYTHONUNBUFFERED=1
7
+ ENV PIP_NO_CACHE_DIR=1
8
+ ENV DEBIAN_FRONTEND=noninteractive
9
 
10
+ # System dependencies (OpenCV, MediaPipe, TensorFlow)
11
+ RUN apt-get update && apt-get install -y \
12
  libgl1 \
13
  libglib2.0-0 \
14
  libatlas-base-dev \
15
  ffmpeg \
16
+ curl \
17
+ && rm -rf /var/lib/apt/lists/*
18
 
 
19
  WORKDIR /app
20
 
 
21
  COPY requirements.txt .
22
 
23
+ RUN pip install --upgrade pip setuptools wheel
24
+ RUN pip install --no-cache-dir -r requirements.txt
 
 
25
 
 
26
  COPY . .
27
 
 
28
  EXPOSE 7860
29
 
30
+ # Simple health check (to show logs if Flask fails)
31
+ HEALTHCHECK CMD curl --fail http://localhost:7860/ || exit 1
32
+
33
  CMD ["python", "app.py"]