# Use an official Python runtime as a parent image FROM python:3.11-slim # Set the working directory in the container WORKDIR /app # Copy the requirements file into the container at /app COPY requirements.txt . # Install any needed packages specified in requirements.txt # We use --no-cache-dir to keep the image size down RUN pip install --no-cache-dir --extra-index-url https://download.pytorch.org/whl/cpu -r requirements.txt # Copy the rest of the application's code into the container at /app COPY . . # Make port 8000 available to the world outside this container EXPOSE 8000 # Define environment variable to ensure python prints things without buffering ENV PYTHONUNBUFFERED=1 # Run the application CMD ["uvicorn", "doc_rag_app:app", "--host", "0.0.0.0", "--port", "8000"]