APEX_BRAIN_G / Dockerfile
peruchia's picture
Upload Dockerfile
3dabefe verified
Raw
History Blame Contribute Delete
2.22 kB
# Dockerfile β€” Cerebro G β€” LiquidityStrategist v6.0 (BitNet REAL β€” ik_llama.cpp)
# VolumeProfile+KMeans+HVN+Fibonacci
# ── Etapa 1: MODEL FETCHER ────────────────────────────────────────────────────
FROM python:3.11-slim AS model-fetcher
RUN apt-get update && apt-get install -y --no-install-recommends \
ca-certificates wget \
&& rm -rf /var/lib/apt/lists/*
RUN pip install --no-cache-dir huggingface_hub
COPY download_model.py /tmp/download_model.py
RUN python3 /tmp/download_model.py
# ── Etapa 2: RUNTIME ──────────────────────────────────────────────────────────
FROM python:3.11-slim AS runtime
RUN apt-get update && apt-get install -y --no-install-recommends \
curl ca-certificates libgomp1 libstdc++6 unzip wget \
&& rm -rf /var/lib/apt/lists/*
RUN wget -q --user-agent="Mozilla/5.0" -O /tmp/ik.zip \
"https://github.com/Thireus/ik_llama.cpp/releases/download/main-b4801-b275691/ik_llama-main-b4801-b275691-bin-ubuntu-x64-avx512_vnni_vbmi.zip" \
&& mkdir -p /app && unzip -q /tmp/ik.zip -d /app && rm /tmp/ik.zip \
&& BINARY=$(find /app -name "llama-server" -type f | head -1) \
&& ln -sf "$BINARY" /usr/local/bin/llama-server && chmod +x "$BINARY"
ENV PATH="/app:$PATH"
ENV LD_LIBRARY_PATH="/app:$LD_LIBRARY_PATH"
WORKDIR /app
COPY --from=model-fetcher /models /models
RUN pip install --no-cache-dir \
fastapi==0.111.0 \
"uvicorn[standard]==0.30.1" \
httpx==0.27.0 \
numpy==1.26.4
ENV MODEL_PATH="/models/ggml-model-i2_s.gguf"
ENV N_CTX=2048
ENV N_THREADS=2
ENV BITNET_PORT=8080
ENV PORT=7860
ENV CEREBRO_ID=G
ENV BITNET_TIMEOUT=45.0
ENV VP_MIN_BARS=5
ENV KILL_ZONE_PCT=0.020
ENV HOT_ZONE_PCT=0.005
ENV CONF_VP_STRONG=0.72
ENV KMEANS_K=3
ENV CACHE_TTL=90.0
COPY server_G.py ./
COPY start_G.sh ./start.sh
RUN chmod +x start.sh
EXPOSE 7860
HEALTHCHECK --interval=30s --timeout=15s --start-period=300s --retries=5 \
CMD curl -f http://localhost:7860/health || exit 1
CMD ["./start.sh"]