Diego Salinas commited on
Commit
67accf8
·
verified ·
1 Parent(s): b6eacfb

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +27 -16
Dockerfile CHANGED
@@ -1,23 +1,34 @@
1
- # Use an official Python runtime as a parent image
2
- FROM python:3.10
3
 
4
- # Set the working directory to /app
5
- WORKDIR /app
 
6
 
7
- # Copy the current directory contents into the container at /app
8
- COPY . /app
9
 
10
- # Install any needed packages specified in requirements.txt
11
- RUN pip install --no-cache-dir -r requirements.txt
 
12
 
13
- # Set USER to root
14
- USER root
 
 
 
 
 
 
 
15
 
16
- # Add permissions to the app directory
17
- RUN chmod 777 /app/*
 
 
 
 
18
 
19
- # Make port 7860 available to the world outside this container
20
- EXPOSE 7860
21
 
22
- # Run app.py when the container launches
23
- CMD ["python", "app.py"]
 
1
+ FROM python:3.10-slim-buster
 
2
 
3
+ ### Set up user with permissions
4
+ # Set up a new user named "user" with user ID 1000
5
+ RUN useradd -m -u 1000 user
6
 
7
+ # Switch to the "user" user
8
+ USER user
9
 
10
+ # Set home to the user's home directory
11
+ ENV HOME=/home/user \
12
+ PATH=/home/user/.local/bin:$PATH
13
 
14
+ # Set the working directory to the user's home directory
15
+ WORKDIR $HOME/app
16
+
17
+ # Copy the current directory contents into the container at $HOME/app setting the owner to the user
18
+ COPY --chown=user . $HOME/app
19
+
20
+ ### Set up app-specific content
21
+ COPY requirements.txt requirements.txt
22
+ RUN pip3 install -r requirements.txt
23
 
24
+ COPY . .
25
+
26
+ ### Update permissions for the app
27
+ USER root
28
+ RUN chmod 777 ~/app/*
29
+ USER user
30
 
31
+ EXPOSE 7860 7860
 
32
 
33
+ ENTRYPOINT ["python3"]
34
+ CMD ["app.py"]