ollama-api / Dockerfile
YussefGAFeer's picture
Update Dockerfile
d2bc90e verified
FROM python:3.10-slim AS base
WORKDIR /app
# Install system dependencies
RUN apt-get update && apt-get install -y \
build-essential \
&& rm -rf /var/lib/apt/lists/*
# Install Ollama in a multi-stage build
FROM python:3.10-slim AS builder
WORKDIR /ollama
# Install build tools
RUN apt-get update && apt-get install -y \
git \
curl \
make \
build-essential \
&& rm -rf /var/lib/apt/lists/*
# Clone and build Ollama
RUN git clone https://github.com/ollama/ollama.git . && \
cd ollama && \
make && \
make install
# Final stage
FROM base
WORKDIR /app
# Copy Ollama binary
COPY --from=builder /usr/local/bin/ollama /usr/local/bin/ollama
# Install runtime dependencies
RUN apt-get update && apt-get install -y \
curl \
&& rm -rf /var/lib/apt/lists/*
# Pull CodeLlama model
RUN ollama pull codellama
# Install Python dependencies
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
# Copy application code
COPY . .
# Expose ports
EXPOSE 8000
EXPOSE 11434
# Start Ollama and our application
CMD ["sh", "-c", "ollama serve & python app.py"]