MaheshP98 commited on
Commit
c19f32d
·
verified ·
1 Parent(s): eb6c7f9

Create Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +39 -0
Dockerfile ADDED
@@ -0,0 +1,39 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ FROM python:3.10
2
+
3
+ # Install system dependencies
4
+ RUN apt-get update && apt-get install -y \
5
+ git git-lfs ffmpeg libsm6 libxext6 cmake rsync libgl1-mesa-glx \
6
+ && rm -rf /var/lib/apt/lists/* \
7
+ && git lfs install
8
+
9
+ # Install Python dependencies
10
+ RUN pip install --no-cache-dir pip -U && \
11
+ pip install --no-cache-dir \
12
+ datasets "huggingface-hub>=0.19" "hf_xet>=1.0.0,<2.0.0" \
13
+ "hf-transfer>=0.1.4" "protobuf<4" "click<8.1" "pydantic~=1.0"
14
+
15
+ # Install Node.js for Streamlit
16
+ RUN apt-get update && apt-get install -y curl && \
17
+ curl -fsSL https://deb.nodesource.com/setup_20.x | bash - && \
18
+ apt-get install -y nodejs && \
19
+ rm -rf /var/lib/apt/lists/* && apt-get clean
20
+
21
+ # Create user
22
+ RUN useradd -m -u 1000 user
23
+
24
+ # Set working directory
25
+ WORKDIR /home/user/app
26
+ USER user
27
+
28
+ # Copy and install requirements
29
+ COPY --chown=user:user requirements.txt .
30
+ RUN pip install --no-cache-dir -r requirements.txt
31
+
32
+ # Copy application files
33
+ COPY --chown=user:user . .
34
+
35
+ # Expose port
36
+ EXPOSE 7860
37
+
38
+ # Run Streamlit
39
+ CMD ["streamlit", "run", "app.py", "--server.port", "7860", "--server.address", "0.0.0.0"]