|
|
|
|
|
FROM python:3.11-slim |
|
|
|
|
|
|
|
|
ENV OLLAMA_HOST=0.0.0.0:11434 |
|
|
ENV OLLAMA_ORIGINS=http://*,https://* |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
RUN apt-get update && \ |
|
|
apt-get install -y curl ca-certificates && \ |
|
|
rm -rf /var/lib/apt/lists/* |
|
|
|
|
|
|
|
|
RUN useradd -m -u 1000 appuser && \ |
|
|
mkdir -p /app && \ |
|
|
chown -R appuser:appuser /app |
|
|
|
|
|
USER appuser |
|
|
WORKDIR /app |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
RUN curl -fL --retry 5 --retry-delay 5 \ |
|
|
-H "User-Agent: Mozilla/5.0 (X11; Linux x86_64)" \ |
|
|
-o /tmp/ollama.tgz https://ollama.com/download/ollama-linux-amd64.tgz && \ |
|
|
tar -xzf /tmp/ollama.tgz --no-same-owner --no-same-permissions -C /tmp && \ |
|
|
cp /tmp/bin/ollama /app/ollama && \ |
|
|
chmod +x /app/ollama && \ |
|
|
rm -rf /tmp/ollama.tgz /tmp/bin |
|
|
|
|
|
ENV PATH="/home/appuser/.local/bin:$PATH" |
|
|
|
|
|
|
|
|
COPY --chown=appuser:appuser . /app |
|
|
|
|
|
|
|
|
RUN ls -ltr && pwd |
|
|
RUN pip install --no-cache-dir --upgrade pip && \ |
|
|
pip install --no-cache-dir -r requirements.txt |
|
|
|
|
|
|
|
|
EXPOSE 7860 |
|
|
|
|
|
|
|
|
COPY --chown=appuser:appuser entrypoint.sh /app/entrypoint.sh |
|
|
RUN chmod +x /app/entrypoint.sh |
|
|
|
|
|
CMD ["/app/entrypoint.sh"] |
|
|
|