Spaces:
Paused
Paused
Download Dockerfile from Leon4gr45/phi_inference: direct link, hf CLI and curl.
- Browser
- Download file 1.72 kB
-
https://huggingface.co/spaces/Leon4gr45/phi_inference/resolve/main/Dockerfile
- Command line
-
hf download hf://spaces/Leon4gr45/phi_inference/Dockerfile
-
curl -L -o Dockerfile https://huggingface.co/spaces/Leon4gr45/phi_inference/resolve/main/Dockerfile
1.72 kB
| # Ubuntu 24.04 base to match the glibc of the official llama.cpp release binary. | |
| FROM ubuntu:24.04 | |
| ENV DEBIAN_FRONTEND=noninteractive | |
| RUN apt-get update && apt-get install -y \ | |
| curl \ | |
| ca-certificates \ | |
| libgomp1 \ | |
| libcurl4 \ | |
| python3 \ | |
| python3-pip \ | |
| && rm -rf /var/lib/apt/lists/* | |
| RUN pip install --no-cache-dir --break-system-packages \ | |
| fastapi \ | |
| uvicorn \ | |
| httpx \ | |
| huggingface_hub | |
| # --------------------------------------------------------------------------- | |
| # Prebuilt llama.cpp CPU server (includes libmtmd -> vision support). No source | |
| # compile: avoids the multimodal OOM that hangs a from-source build on 2 vCPUs. | |
| # Ships per-microarch CPU variants selected at runtime -> portable & safe. | |
| # --------------------------------------------------------------------------- | |
| ARG LLAMA_TAG=b9895 | |
| RUN mkdir -p /llama.cpp/build/bin \ | |
| && curl -fsSL -o /tmp/llama.tar.gz \ | |
| "https://github.com/ggml-org/llama.cpp/releases/download/${LLAMA_TAG}/llama-${LLAMA_TAG}-bin-ubuntu-x64.tar.gz" \ | |
| && tar -xzf /tmp/llama.tar.gz -C /llama.cpp/build/bin --strip-components=1 \ | |
| && rm /tmp/llama.tar.gz \ | |
| && chmod +x /llama.cpp/build/bin/llama-server \ | |
| && /llama.cpp/build/bin/llama-server --version 2>&1 | head -5 | |
| ENV LD_LIBRARY_PATH=/llama.cpp/build/bin | |
| WORKDIR /app | |
| # Models (text GGUF + mmproj projector) are pulled at container startup by app.py. | |
| RUN mkdir -p /models && chmod -R 777 /models | |
| COPY . . | |
| EXPOSE 7860 8081 | |
| # Vision model + projector are small (~1.5GB total); start-period covers download. | |
| HEALTHCHECK --interval=30s --timeout=10s --start-period=300s --retries=3 \ | |
| CMD curl -f http://localhost:7860/health || exit 1 | |
| CMD ["python3", "app.py"] | |