novamysticX commited on
Commit
a40e8cd
·
verified ·
1 Parent(s): c195a75

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +24 -31
Dockerfile CHANGED
@@ -1,31 +1,24 @@
1
- ## Use the official Python 3.9 image
2
- FROM python:3.9
3
-
4
- ## set the working directory to /code
5
- WORKDIR /code
6
-
7
- ## Copy the current directory contents in the container at /code
8
- COPY ./requirements.txt /code/requirements.txt
9
-
10
- ## Install the requirements.txt
11
- RUN pip install --no-cache-dir --upgrade -r /code/requirements.txt
12
-
13
- # Set up a new user named "user"
14
- RUN useradd user
15
- # Switch to the "user" user
16
- USER user
17
-
18
- # Set home to the user's home directory
19
-
20
- ENV HOME=/home/user \
21
- PATH=/home/user/.local/bin:$PATH
22
-
23
- # Set the working directory to the user's home directory
24
- WORKDIR $HOME/app
25
-
26
- # Copy the current directory contents into the container at $HOME/app setting the owner to the user
27
- COPY --chown=user . $HOME/app
28
-
29
- ## Start the FASTAPI App on port 7860
30
- CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "7860"]
31
-
 
1
+ FROM python:3.9-slim
2
+
3
+ WORKDIR /code
4
+
5
+ # Install system dependencies
6
+ RUN apt-get update && apt-get install -y \
7
+ build-essential \
8
+ git \
9
+ && rm -rf /var/lib/apt/lists/*
10
+
11
+ # Copy requirements first to leverage Docker cache
12
+ COPY requirements.txt .
13
+
14
+ # Install Python dependencies
15
+ RUN pip install --no-cache-dir -r requirements.txt
16
+
17
+ # Copy the application code
18
+ COPY . .
19
+
20
+ # Expose the port the app runs on
21
+ EXPOSE 7860
22
+
23
+ # Command to run the application
24
+ CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "7860"]