mousvai commited on
Commit
29022b2
·
verified ·
1 Parent(s): 7b0d216

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +9 -12
Dockerfile CHANGED
@@ -1,25 +1,22 @@
1
- # Use the official Python base image
2
  FROM python:3.11-slim
3
-
4
- # Set the working directory in the container
5
  WORKDIR /app
6
 
7
- # Upgrade pip and install necessary system dependencies
8
  RUN pip install --no-cache-dir --upgrade pip
9
- RUN apt-get update && apt-get install -y --no-install-recommends build-essential git && rm -rf /var/lib/apt/lists/*
10
 
11
- # Copy the requirements file first to leverage Docker cache
12
  COPY requirements.txt ./
13
  RUN pip install --no-cache-dir -r requirements.txt
14
 
15
- # Copy all other project files and folders (app.py, images, Resources, etc.) into the container
 
 
 
 
 
 
16
  COPY . .
17
 
18
- # Expose the port Streamlit runs on
19
  EXPOSE 8501
20
-
21
- # Health check to see if the app is running
22
  HEALTHCHECK CMD curl --fail http://localhost:8501/_stcore/health
23
 
24
- # Command to run your Streamlit application
25
- ENTRYPOINT ["streamlit", "run", "app.py", "--server.port=8501", "--server.address=0.0.0.0"]
 
 
1
  FROM python:3.11-slim
 
 
2
  WORKDIR /app
3
 
 
4
  RUN pip install --no-cache-dir --upgrade pip
5
+ RUN apt-get update && apt-get install -y --no-install-recommends build-essential git curl && rm -rf /var/lib/apt/lists/*
6
 
 
7
  COPY requirements.txt ./
8
  RUN pip install --no-cache-dir -r requirements.txt
9
 
10
+ # Set HuggingFace cache path (to avoid permission or missing folder issues)
11
+ ENV TRANSFORMERS_CACHE=/app/.cache/huggingface
12
+ RUN mkdir -p /app/.cache/huggingface
13
+
14
+ # Pre-download Persian model to avoid runtime errors
15
+ RUN python -c "from langchain_huggingface import HuggingFaceEmbeddings; HuggingFaceEmbeddings(model_name='HooshvareLab/bert-base-parsbert-uncased', cache_folder='/app/.cache/huggingface')"
16
+
17
  COPY . .
18
 
 
19
  EXPOSE 8501
 
 
20
  HEALTHCHECK CMD curl --fail http://localhost:8501/_stcore/health
21
 
22
+ ENTRYPOINT ["streamlit", "run", "app.py", "--server.port=8501", "--server.address=0.0.0.0"]