Anusha3 commited on
Commit
344bf07
·
verified ·
1 Parent(s): b4c735c

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +20 -13
Dockerfile CHANGED
@@ -1,23 +1,30 @@
1
- # Use a minimal base image with Python 3.9 installed
2
  FROM python:3.9
3
 
4
- # Set the working directory inside the container to /app
5
- WORKDIR /app
6
 
7
- # Copy all files from the current directory on the host to the container's /app directory
8
- COPY . .
9
 
10
- # Install Python dependencies listed in requirements.txt
11
- RUN pip3 install -r requirements.txt
12
 
13
- RUN useradd -m -u 1000 user
14
- USER user
 
 
 
 
 
15
  ENV HOME=/home/user \
16
- PATH=/home/user/.local/bin:$PATH
17
 
18
- WORKDIR $HOME/app
 
19
 
20
- COPY --chown=user . $HOME/app
 
21
 
22
- # Define the command to run the Streamlit app on port "7860" and make it accessible externally
23
  CMD ["streamlit", "run", "app.py", "--server.port=7860", "--server.address=0.0.0.0", "--server.enableXsrfProtection=false"]
 
1
+ # Use Python 3.9 base image
2
  FROM python:3.9
3
 
4
+ # Create user
5
+ RUN useradd -m -u 1000 user
6
 
7
+ # Set working directory
8
+ WORKDIR /home/user/app
9
 
10
+ # Copy requirements first (better caching)
11
+ COPY requirements.txt .
12
 
13
+ # Install dependencies
14
+ RUN pip install --no-cache-dir -r requirements.txt
15
+
16
+ # Copy the rest of the app
17
+ COPY --chown=user . .
18
+
19
+ # Set environment
20
  ENV HOME=/home/user \
21
+ PATH=/home/user/.local/bin:$PATH
22
 
23
+ # Switch to non-root user
24
+ USER user
25
 
26
+ # 🔥 IMPORTANT: Expose Hugging Face required port
27
+ EXPOSE 7860
28
 
29
+ # Start Streamlit on port 7860
30
  CMD ["streamlit", "run", "app.py", "--server.port=7860", "--server.address=0.0.0.0", "--server.enableXsrfProtection=false"]