Shubham170793 commited on
Commit
d542234
·
verified ·
1 Parent(s): 85c159e

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +21 -8
Dockerfile CHANGED
@@ -1,20 +1,33 @@
1
- FROM python:3.13.5-slim
 
2
 
 
3
  WORKDIR /app
4
 
 
 
 
 
 
 
 
 
5
  RUN apt-get update && apt-get install -y \
6
  build-essential \
7
- curl \
8
  git \
9
  && rm -rf /var/lib/apt/lists/*
10
 
11
- COPY requirements.txt ./
12
- COPY src/ ./src/
13
 
14
- RUN pip3 install -r requirements.txt
 
15
 
16
- EXPOSE 8501
 
17
 
18
- HEALTHCHECK CMD curl --fail http://localhost:8501/_stcore/health
 
19
 
20
- ENTRYPOINT ["streamlit", "run", "src/streamlit_app.py", "--server.port=8501", "--server.address=0.0.0.0"]
 
 
1
+ # Use Python 3.10 (stable for faiss, pymupdf, transformers)
2
+ FROM python:3.10-slim
3
 
4
+ # Set work directory
5
  WORKDIR /app
6
 
7
+ # Ensure Python doesn’t buffer logs and redirect Hugging Face cache
8
+ ENV PYTHONUNBUFFERED=1 \
9
+ HF_HOME=/app/hf_cache \
10
+ TRANSFORMERS_CACHE=/app/hf_cache \
11
+ HF_DATASETS_CACHE=/app/hf_cache \
12
+ HF_MODULES_CACHE=/app/hf_cache
13
+
14
+ # Install system dependencies
15
  RUN apt-get update && apt-get install -y \
16
  build-essential \
 
17
  git \
18
  && rm -rf /var/lib/apt/lists/*
19
 
20
+ # Copy requirement file first (so Docker can cache pip installs)
21
+ COPY requirements.txt .
22
 
23
+ # Install Python dependencies
24
+ RUN pip install --no-cache-dir -r requirements.txt
25
 
26
+ # Copy all app code into the container
27
+ COPY . .
28
 
29
+ # Expose Streamlit default port
30
+ EXPOSE 8501
31
 
32
+ # Start Streamlit app
33
+ CMD ["streamlit", "run", "src/streamlit_app.py", "--server.port=8501", "--server.address=0.0.0.0"]