souging commited on
Commit
a9be2cd
·
verified ·
1 Parent(s): a16bef0

Create Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +30 -0
Dockerfile ADDED
@@ -0,0 +1,30 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ FROM python:3.10.14-bookworm
2
+
3
+ ARG USER_UID=10002
4
+ ARG USER_GID=$USER_UID
5
+ ARG USERNAME=modelapi
6
+
7
+ RUN groupadd --gid $USER_GID $USERNAME \
8
+ && useradd --uid $USER_UID --gid $USER_GID -m $USERNAME
9
+
10
+ # Copy required files
11
+ RUN mkdir -p /modelapi && mkdir -p /home/$USERNAME/.modelapi
12
+ COPY app /modelapi/app
13
+ COPY pyproject.toml /modelapi/pyproject.toml
14
+
15
+ # Setup permissions
16
+ RUN chown -R $USER_UID:$USER_GID /modelapi \
17
+ && chown -R $USER_UID:$USER_GID /home/$USERNAME/.modelapi \
18
+ && chown -R $USER_UID:$USER_GID /home/$USERNAME \
19
+ && chmod -R 755 /home/$USERNAME \
20
+ && chmod -R 755 /modelapi \
21
+ && chmod -R 755 /home/$USERNAME/.modelapi
22
+
23
+ # Change to the user
24
+ USER $USERNAME
25
+
26
+ RUN /bin/bash -c "python3 -m venv /modelapi/.venv && source /modelapi/.venv/bin/activate && pip3 install -e /modelapi/."
27
+
28
+ EXPOSE 6500
29
+
30
+ CMD ["/bin/bash", "-c", "source /modelapi/.venv/bin/activate && python3 /modelapi/app/run.py"]