File size: 1,059 Bytes
20f3707
e5e06fd
 
20f3707
e5e06fd
 
 
20f3707
 
 
 
 
9bee105
 
20f3707
 
9bee105
 
 
20f3707
9bee105
 
20f3707
 
9bee105
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# Sử dụng Python 3.12 làm base image
FROM python:3.12

# Tạo user không phải root để tăng cường bảo mật
RUN useradd -m -u 1000 user
USER user

# Thiết lập biến môi trường PATH để bao gồm các gói cài đặt cục bộ của user
ENV PATH="/home/user/.local/bin:${PATH}"
# ENV ENABLE_ADMIN_CHAT_ACCESS=true # Giữ lại nếu Space của bạn sử dụng tính năng này

# Đặt thư mục làm việc trong container
WORKDIR /app

# Sao chép file requirements.txt và cài đặt các dependencies
# Sử dụng --chown=user để đảm bảo user sở hữu các file này
COPY --chown=user ./requirements.txt requirements.txt
RUN pip install --no-cache-dir --upgrade -r requirements.txt

# Sao chép toàn bộ mã nguồn ứng dụng vào thư mục làm việc
COPY --chown=user . /app

# Lệnh để chạy ứng dụng FastAPI khi container khởi động
# Sử dụng Uvicorn, lắng nghe trên host 0.0.0.0 và port 7860 theo yêu cầu
CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "7860"]