huynguyen6906 commited on
Commit
cda343d
·
verified ·
1 Parent(s): 5110713

Create Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +17 -27
Dockerfile CHANGED
@@ -1,36 +1,26 @@
1
- FROM python:3.11-slim
 
2
 
3
- # syntax = docker/dockerfile:1.4
4
- FROM python:3.11-slim
5
-
6
- # Tắt buffer để thấy log realtime
7
- ENV PYTHONUNBUFFERED=1
8
- ENV PYTHONDONTWRITEBYTECODE=1
9
-
10
- # Cài đặt hệ thống cần thiết (nhẹ)
11
- RUN apt-get update && apt-get install -y --no-install-recommends \
12
- gcc \
13
- libglib2.0-0 \
14
- && rm -rf /var/lib/apt/lists/*
15
 
 
16
  WORKDIR /app
17
 
18
- # Copy requirements trước để tận dụng Docker cache
19
- COPY requirements.txt .
20
-
21
- # Cài packages (dùng --no-cache-dir để nhẹ hơn)
22
- RUN pip install --no-cache-dir -r requirements.txt
23
 
24
- # Copy code
25
- COPY server_paper_RAM_optimize.py .
 
26
 
27
- # Tải dữ liệu từ Hugging Face khi build (tùy chọn, hoặc để runtime tải)
28
- # Nếu bạn đã upload file .h5 + .bin vào Space rồi thì bỏ 2 dòng dưới
29
- # COPY Papers_Embedbed_0-1000000.h5 .
30
- # COPY hnsw_paper_index.bin .
31
 
32
- # Expose port chuẩn HF Spaces
33
  EXPOSE 7860
34
 
35
- # Chạy bằng gunicorn (ổn định, hỗ trợ nhiều request)
36
- CMD gunicorn --bind 0.0.0.0:7860 --workers 2 --timeout 120 server_paper:app
 
1
+ # Sử dụng Python 3.10
2
+ FROM python:3.10
3
 
4
+ # Cài đặt Git (để tải CLIP)
5
+ RUN apt-get update && apt-get install -y git
 
 
 
 
 
 
 
 
 
 
6
 
7
+ # Thiết lập thư mục làm việc
8
  WORKDIR /app
9
 
10
+ # Tạo user mới để chạy an toàn (Yêu cầu của Hugging Face)
11
+ RUN useradd -m -u 1000 user
12
+ USER user
13
+ ENV PATH="/home/user/.local/bin:$PATH"
 
14
 
15
+ # Copy và cài đặt thư viện
16
+ COPY --chown=user requirements.txt requirements.txt
17
+ RUN pip install --no-cache-dir --upgrade -r requirements.txt
18
 
19
+ # Copy toàn bộ code vào container
20
+ COPY --chown=user . .
 
 
21
 
22
+ # Mở cổng 7860
23
  EXPOSE 7860
24
 
25
+ # Chạy file Python chính (Lưu ý tên file phải khớp bên dưới)
26
+ CMD ["python", "server_paper_RAM_optimize.py"]