JobForecaster-Agent / Dockerfile
lixiaowww's picture
Sync from GitHub via hub-sync
d99ff72 verified
Raw
History Blame Contribute Delete
1.33 kB
# Hugging Face Spaces — Streamlit via Docker (native Streamlit SDK deprecated 2025-04)
# https://huggingface.co/docs/hub/spaces-changelog
FROM python:3.12-slim
RUN apt-get update && apt-get install -y --no-install-recommends curl \
&& rm -rf /var/lib/apt/lists/* \
&& useradd -m -u 1000 user
USER user
WORKDIR /home/user/app
ENV STREAMLIT_BROWSER_GATHER_USAGE_STATS=false
ENV PYTHONUNBUFFERED=1
ENV EVOLUTION_N_BOOTSTRAP=15
ENV JOB_RADAR_EMBEDDER=sentence_transformers
ENV HF_HOME=/home/user/.cache/huggingface
ENV SENTENCE_TRANSFORMERS_HOME=/home/user/.cache/sentence_transformers
ENV PATH="/home/user/.local/bin:${PATH}"
COPY --chown=user:user requirements.txt requirements-dashboard.txt ./
RUN pip install --user --no-cache-dir -r requirements.txt -r requirements-dashboard.txt \
&& python3 -c "\
from sentence_transformers import SentenceTransformer; \
SentenceTransformer('paraphrase-multilingual-MiniLM-L12-v2'); \
print('MiniLM weights cached at build time')"
COPY --chown=user:user . .
EXPOSE 8501
HEALTHCHECK CMD curl --fail http://localhost:8501/_stcore/health || exit 1
ENTRYPOINT ["streamlit", "run", "dashboard.py", "--server.port=8501", "--server.address=0.0.0.0", "--server.headless=true", "--server.enableCORS=false", "--server.enableXsrfProtection=false", "--server.fileWatcherType=none"]