# 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"]