fix: move HF_HUB_OFFLINE after reranker pre-download
Browse filesOffline flags blocked the build-time download itself. Download must run
without offline flags, then set them afterward to prevent runtime network calls.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Dockerfile +6 -4
Dockerfile
CHANGED
|
@@ -17,14 +17,16 @@ RUN mkdir -p data/raw logs chroma_db
|
|
| 17 |
RUN useradd -m -u 1000 user && chown -R user /app
|
| 18 |
USER user
|
| 19 |
|
| 20 |
-
# Cache
|
| 21 |
ENV HF_HOME=/app/.cache/huggingface
|
| 22 |
-
ENV HF_HUB_OFFLINE=1
|
| 23 |
-
ENV TRANSFORMERS_OFFLINE=1
|
| 24 |
|
| 25 |
-
#
|
| 26 |
RUN python -c "from sentence_transformers import CrossEncoder; CrossEncoder('cross-encoder/ms-marco-TinyBERT-L-2-v2')"
|
| 27 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 28 |
EXPOSE 7860
|
| 29 |
|
| 30 |
CMD ["uvicorn", "server.main:app", "--host", "0.0.0.0", "--port", "7860"]
|
|
|
|
| 17 |
RUN useradd -m -u 1000 user && chown -R user /app
|
| 18 |
USER user
|
| 19 |
|
| 20 |
+
# Cache under /app so user 1000 owns it at both build and runtime
|
| 21 |
ENV HF_HOME=/app/.cache/huggingface
|
|
|
|
|
|
|
| 22 |
|
| 23 |
+
# Download reranker as user 1000 — offline flags NOT set yet so download works
|
| 24 |
RUN python -c "from sentence_transformers import CrossEncoder; CrossEncoder('cross-encoder/ms-marco-TinyBERT-L-2-v2')"
|
| 25 |
|
| 26 |
+
# Block runtime network calls — model already in HF_HOME cache
|
| 27 |
+
ENV HF_HUB_OFFLINE=1
|
| 28 |
+
ENV TRANSFORMERS_OFFLINE=1
|
| 29 |
+
|
| 30 |
EXPOSE 7860
|
| 31 |
|
| 32 |
CMD ["uvicorn", "server.main:app", "--host", "0.0.0.0", "--port", "7860"]
|