# Start with the base Python 3.11 image FROM python:3.11 # Create a new user and set permissions RUN useradd -m -u 1000 user # Install required system packages using apt-get RUN apt-get update && apt-get install -y \ curl \ python3-pip \ build-essential \ libssl-dev \ libffi-dev \ cargo \ && rm -rf /var/lib/apt/lists/* ENV VIRTUAL_ENV=/home/packages/.venv ADD https://astral.sh/uv/install.sh /install.sh RUN chmod -R 655 /install.sh && /install.sh && rm /install.sh COPY ./requirements.txt . RUN /root/.cargo/bin/uv venv /home/packages/.venv RUN /root/.cargo/bin/uv pip install --no-cache -r requirements.txt # Set the working directory WORKDIR /app # Copy the application code to the working directory COPY --chown=user . /app # Expose the port the app runs on EXPOSE 7860 # Define the default command CMD ["python", "app.py"]