credent007 commited on
Commit
7bd644b
·
verified ·
1 Parent(s): 438e411

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +37 -31
Dockerfile CHANGED
@@ -1,57 +1,63 @@
1
- # =========================================================
2
- # 1. BASE IMAGE (stable CUDA runtime)
3
- # =========================================================
4
- FROM pytorch/pytorch:2.2.0-cuda12.1-cudnn8-runtime
5
-
6
- # =========================================================
7
- # 2. ENV VARIABLES
8
- # =========================================================
9
  ENV PYTHONDONTWRITEBYTECODE=1 \
10
  PYTHONUNBUFFERED=1 \
11
  PORT=7860
12
 
13
- # =========================================================
14
- # 3. SYSTEM DEPENDENCIES
15
- # =========================================================
16
  RUN apt-get update && apt-get install -y --no-install-recommends \
17
  git \
18
  build-essential \
 
19
  libglib2.0-0 \
20
  libsm6 \
21
  libxrender1 \
22
  libxext6 \
 
23
  && rm -rf /var/lib/apt/lists/*
24
 
25
- # =========================================================
26
- # 4. WORK DIRECTORY
27
- # =========================================================
28
  WORKDIR /app
29
 
30
- # =========================================================
31
- # 5. COPY REQUIREMENTS
32
- # =========================================================
33
  COPY requirements.txt .
34
 
35
- RUN pip install --no-cache-dir --upgrade pip && \
36
- pip install --no-cache-dir -r requirements.txt
 
 
 
 
 
 
 
37
 
38
- # =========================================================
39
- # 6. COPY CODE
40
- # =========================================================
41
  COPY . .
42
 
43
- # =========================================================
44
- # 7. NON-ROOT USER (SECURITY)
45
- # =========================================================
46
  RUN useradd -m appuser && chown -R appuser /app
47
  USER appuser
48
 
49
- # =========================================================
50
- # 8. EXPOSE PORT
51
- # =========================================================
52
  EXPOSE 7860
53
 
54
- # =========================================================
55
- # 9. RUN APP
56
- # =========================================================
57
  CMD ["sh", "-c", "uvicorn mainapp:app --host 0.0.0.0 --port ${PORT}"]
 
1
+ FROM python:3.11-slim
2
+
3
+ # ======================
4
+ # ENV
5
+ # ======================
 
 
 
6
  ENV PYTHONDONTWRITEBYTECODE=1 \
7
  PYTHONUNBUFFERED=1 \
8
  PORT=7860
9
 
10
+ # ======================
11
+ # SYSTEM DEPENDENCIES
12
+ # ======================
13
  RUN apt-get update && apt-get install -y --no-install-recommends \
14
  git \
15
  build-essential \
16
+ libgl1 \
17
  libglib2.0-0 \
18
  libsm6 \
19
  libxrender1 \
20
  libxext6 \
21
+ && apt-get clean \
22
  && rm -rf /var/lib/apt/lists/*
23
 
24
+ # ======================
25
+ # WORKDIR
26
+ # ======================
27
  WORKDIR /app
28
 
29
+ # ======================
30
+ # COPY REQUIREMENTS
31
+ # ======================
32
  COPY requirements.txt .
33
 
34
+ # ======================
35
+ # CLEAN INSTALL (IMPORTANT FIX)
36
+ # ======================
37
+ RUN pip install --no-cache-dir --upgrade pip
38
+
39
+ # safety: remove broken installs if any base image has them
40
+ RUN pip uninstall -y transformers || true
41
+
42
+ RUN pip install --no-cache-dir -r requirements.txt
43
 
44
+ # ======================
45
+ # COPY CODE
46
+ # ======================
47
  COPY . .
48
 
49
+ # ======================
50
+ # SECURITY USER
51
+ # ======================
52
  RUN useradd -m appuser && chown -R appuser /app
53
  USER appuser
54
 
55
+ # ======================
56
+ # PORT
57
+ # ======================
58
  EXPOSE 7860
59
 
60
+ # ======================
61
+ # RUN APP
62
+ # ======================
63
  CMD ["sh", "-c", "uvicorn mainapp:app --host 0.0.0.0 --port ${PORT}"]