ranbac commited on
Commit
d77ca99
·
verified ·
1 Parent(s): 52a9a78

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +33 -8
Dockerfile CHANGED
@@ -1,17 +1,42 @@
1
- # 1. Sử dụng Python 3.10 (Ổn định cho Paddle)
2
- FROM python:3.10
3
 
4
- # 2. Thiết lập thư mục làm việc
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5
  WORKDIR /app
6
 
7
- # 3. Copycài đặt các gói hệ thống (Fix lỗi libGL)
8
- COPY packages.txt .
9
- RUN apt-get update && xargs -r -a packages.txt apt-get install -y && rm -rf /var/lib/apt/lists/*
10
 
11
- # 4. Copy và cài đặt thư viện Python
12
  COPY requirements.txt .
13
  RUN pip install --no-cache-dir -r requirements.txt
14
 
15
- # 5. Copy code chạy App
16
  COPY . .
 
 
 
 
 
17
  CMD ["python", "app.py"]
 
1
+ # Sử dụng Python 3.10 slim để cân bằng giữa kích thước và tính tương thích
2
+ FROM python:3.10-slim
3
 
4
+ # Thiết lập biến môi trường để log hiển thị ngay lập tức
5
+ ENV PYTHONUNBUFFERED=1 \
6
+ # Đặt thư mục cache cho HuggingFace và Paddle để tránh lỗi permission
7
+ XDG_CACHE_HOME=/app/.cache \
8
+ PADDLE_HOME=/app/.paddleocr
9
+
10
+ # Cài đặt các thư viện hệ thống cần thiết cho OpenCV và PaddleOCR
11
+ # libgl1-mesa-glx: Cần cho cv2
12
+ # libgomp1: Cần cho tính toán song song
13
+ # libglib2.0-0: Thư viện nền tảng hệ thống
14
+ RUN apt-get update && apt-get install -y \
15
+ libgl1-mesa-glx \
16
+ libglib2.0-0 \
17
+ libsm6 \
18
+ libxext6 \
19
+ libxrender-dev \
20
+ libgomp1 \
21
+ git \
22
+ && rm -rf /var/lib/apt/lists/*
23
+
24
+ # Thiết lập thư mục làm việc
25
  WORKDIR /app
26
 
27
+ # Tạo thư mục cache cấp quyền (Quan trọng cho User 1000 của HF)
28
+ RUN mkdir -p /app/.cache && mkdir -p /app/.paddleocr && \
29
+ chmod -R 777 /app
30
 
31
+ # Copy file requirements và cài đặt
32
  COPY requirements.txt .
33
  RUN pip install --no-cache-dir -r requirements.txt
34
 
35
+ # Copy toàn bộ code vào
36
  COPY . .
37
+
38
+ # Mở cổng 7860 (Cổng mặc định của Hugging Face Spaces)
39
+ EXPOSE 7860
40
+
41
+ # Chạy ứng dụng
42
  CMD ["python", "app.py"]