Hasitha16 commited on
Commit
e4ba0e9
·
verified ·
1 Parent(s): 76a3bdf

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +15 -16
Dockerfile CHANGED
@@ -1,34 +1,33 @@
1
- # ---- BASE PYTHON IMAGE ----
2
  FROM python:3.10-slim
3
 
4
- # ---- ENV & WORKDIR ----
5
- ENV PYTHONDONTWRITEBYTECODE=1
6
- ENV PYTHONUNBUFFERED=1
7
  WORKDIR /code
8
 
9
- # ---- SYSTEM DEPENDENCIES ----
10
  RUN apt-get update && apt-get install -y \
11
  libsndfile1 ffmpeg git \
12
  && rm -rf /var/lib/apt/lists/*
13
 
14
- # ---- COPY PROJECT FILES ----
15
  COPY . /code
16
 
17
- # ---- INSTALL DEPENDENCIES ----
 
 
 
 
 
 
 
 
18
  RUN pip install --upgrade pip
19
  RUN pip install -r requirements.txt
20
 
21
- # Avoid permission issues with Streamlit
22
- ENV HOME=/code
23
- ENV STREAMLIT_HOME=/code
24
-
25
- ENV TRANSFORMERS_CACHE=/tmp/hf-cache
26
- ENV HF_HOME=/tmp/hf-home
27
- ENV NLTK_DATA=/tmp/nltk_data
28
- ENV STREAMLIT_ROOT=/tmp/.streamlit
29
 
30
- # ---- EXPOSE PORTS ----
31
  EXPOSE 7860
32
  EXPOSE 8000
33
 
 
34
  CMD ["bash", "-c", "streamlit run frontend.py --server.port 7860 & uvicorn main:app --host 0.0.0.0 --port 8000"]
 
 
1
  FROM python:3.10-slim
2
 
 
 
 
3
  WORKDIR /code
4
 
5
+ # System dependencies
6
  RUN apt-get update && apt-get install -y \
7
  libsndfile1 ffmpeg git \
8
  && rm -rf /var/lib/apt/lists/*
9
 
10
+ # Copy files
11
  COPY . /code
12
 
13
+ # Set environment for Streamlit and Transformers
14
+ ENV PYTHONDONTWRITEBYTECODE=1
15
+ ENV PYTHONUNBUFFERED=1
16
+ ENV HF_HOME=/tmp/hf-home
17
+ ENV TRANSFORMERS_CACHE=/tmp/hf-cache
18
+ ENV NLTK_DATA=/tmp/nltk_data
19
+ ENV XDG_CONFIG_HOME=/tmp # 👈 Streamlit will store .streamlit here
20
+
21
+ # Install Python dependencies
22
  RUN pip install --upgrade pip
23
  RUN pip install -r requirements.txt
24
 
25
+ # Make .streamlit dir in /tmp
26
+ RUN mkdir -p /tmp/.streamlit
 
 
 
 
 
 
27
 
28
+ # Expose ports
29
  EXPOSE 7860
30
  EXPOSE 8000
31
 
32
+ # Run both frontend and backend
33
  CMD ["bash", "-c", "streamlit run frontend.py --server.port 7860 & uvicorn main:app --host 0.0.0.0 --port 8000"]