# Use an official Python runtime as a parent image | |
FROM python:3.10-slim | |
# Set working directory | |
WORKDIR /app | |
# Copy the requirements file | |
COPY requirements.txt . | |
# Install dependencies | |
RUN pip install --no-cache-dir -r requirements.txt | |
# Install Ollama | |
RUN apt-get update && apt-get install -y curl | |
RUN curl -fsSL https://ollama.com/install.sh | sh | |
# Pre-download the llama3.2:1b model and debug | |
RUN ollama pull llama3.2:1b && ollama list | |
# Copy the app code | |
COPY app.py . | |
# Expose the Streamlit port | |
EXPOSE 8501 | |
# Start Ollama in the background, log output, wait 10 seconds, then run Streamlit | |
CMD ollama serve > ollama.log 2>&1 & sleep 10 && streamlit run app.py --server.port 8501 --server.address 0.0.0.0 |