ranbac commited on
Commit
9fbe59a
·
verified ·
1 Parent(s): 04646b3

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +9 -9
Dockerfile CHANGED
@@ -1,29 +1,29 @@
1
- # Sử dụng môi trường Python 3.9 bản nhẹ (slim)
2
  FROM python:3.9-slim
3
 
4
- # Cài đặt các thư viện hệ thống (Thêm libgomp1 cho PaddlePaddle)
5
  RUN apt-get update && apt-get install -y \
6
  libgl1 \
7
  libglib2.0-0 \
8
- libgomp1 \
9
  && rm -rf /var/lib/apt/lists/*
10
 
11
- # Copy file requirements.txt vào môi trường và cài đặt
12
  COPY requirements.txt .
 
 
 
 
 
13
  RUN pip install --no-cache-dir -r requirements.txt
14
 
15
- # Tạo user mới để tránh lỗi phân quyền (Permission denied) trên Hugging Face
16
  RUN useradd -m -u 1000 user
17
  USER user
18
  ENV HOME=/home/user \
19
  PATH=/home/user/.local/bin:$PATH
20
 
21
- # Thiết lập thư mục làm việc và copy toàn bộ code vào
22
  WORKDIR $HOME/app
23
  COPY --chown=user . $HOME/app
24
 
25
- # Mở cổng 7860 (Hugging Face BẮT BUỘC sử dụng cổng này)
26
  EXPOSE 7860
27
-
28
- # Lệnh khởi chạy FastAPI bằng Uvicorn
29
  CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "7860"]
 
1
+ # Sử dụng môi trường Python 3.9 bản nhẹ
2
  FROM python:3.9-slim
3
 
4
+ # Cài đặt thư viện hệ thống cần thiết cho OpenCV
5
  RUN apt-get update && apt-get install -y \
6
  libgl1 \
7
  libglib2.0-0 \
 
8
  && rm -rf /var/lib/apt/lists/*
9
 
10
+ # Copy file requirements
11
  COPY requirements.txt .
12
+
13
+ # BÍ QUYẾT TỐI ƯU: Cài PyTorch bản CPU trước để nhẹ máy, tránh tải nhầm bản GPU nặng 2.5GB
14
+ RUN pip install --no-cache-dir torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cpu
15
+
16
+ # Cài các thư viện còn lại (EasyOCR, FastAPI...)
17
  RUN pip install --no-cache-dir -r requirements.txt
18
 
19
+ # Phân quyền User cho Hugging Face
20
  RUN useradd -m -u 1000 user
21
  USER user
22
  ENV HOME=/home/user \
23
  PATH=/home/user/.local/bin:$PATH
24
 
 
25
  WORKDIR $HOME/app
26
  COPY --chown=user . $HOME/app
27
 
 
28
  EXPOSE 7860
 
 
29
  CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "7860"]