FROM python:3.12-slim-bookworm WORKDIR /app # Update package index and install necessary tools, including curl RUN apt-get update && apt-get install -y curl # Download the model RUN curl -Lo qwen2.5-coder-3b-instruct-q4_k_m.gguf https://huggingface.co/Qwen/Qwen2.5-Coder-3B-Instruct-GGUF/resolve/main/qwen2.5-coder-3b-instruct-q4_k_m.gguf?download=true # Install build tools required for llama-cpp-python RUN apt-get update && apt-get install -y build-essential # Copy requirements and install dependencies COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt # Redundant command to invalidate cache RUN echo "Intentionally invalidating cache" # Copy the application code COPY . . # Expose the port that Streamlit will run on EXPOSE 8501 # Define the entrypoint to run the Streamlit application ENTRYPOINT ["streamlit", "run", "🤖SQL_Agent.py", "--server.port=8501", "--server.address=0.0.0.0"]