Spaces:
Running
Running
Update Dockerfile
Browse files- Dockerfile +16 -20
Dockerfile
CHANGED
@@ -3,33 +3,29 @@ FROM ubuntu:24.04
|
|
3 |
ENV DEBIAN_FRONTEND=noninteractive \
|
4 |
TZ=Europe/Paris
|
5 |
|
6 |
-
#
|
7 |
-
COPY setup.sh /root/setup.sh
|
8 |
-
RUN chmod +x /root/setup.sh && /root/setup.sh
|
9 |
-
|
10 |
-
# Create working directory
|
11 |
-
WORKDIR /app
|
12 |
-
|
13 |
-
# Create non-root user
|
14 |
RUN adduser --disabled-password --gecos '' --shell /bin/bash user \
|
15 |
-
&& chown -R user:user /app \
|
16 |
&& echo "user ALL=(ALL) NOPASSWD:ALL" > /etc/sudoers.d/90-user
|
17 |
|
18 |
-
# Home directory permissions
|
19 |
ENV HOME=/home/user
|
20 |
-
|
21 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
22 |
|
23 |
-
#
|
24 |
USER user
|
25 |
-
WORKDIR $HOME/app
|
26 |
|
27 |
-
#
|
28 |
-
COPY --chown=user start.sh /home/user/start.sh
|
29 |
-
RUN chmod +x /home/user/start.sh
|
30 |
|
31 |
-
#
|
32 |
-
COPY --chown=user .
|
33 |
|
34 |
ENV PYTHONUNBUFFERED=1 \
|
35 |
GRADIO_ALLOW_FLAGGING=never \
|
@@ -39,4 +35,4 @@ ENV PYTHONUNBUFFERED=1 \
|
|
39 |
SYSTEM=spaces \
|
40 |
SHELL=/bin/bash
|
41 |
|
42 |
-
CMD ["/home/user/start.sh"]
|
|
|
3 |
ENV DEBIAN_FRONTEND=noninteractive \
|
4 |
TZ=Europe/Paris
|
5 |
|
6 |
+
# 建立使用者與資料夾
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7 |
RUN adduser --disabled-password --gecos '' --shell /bin/bash user \
|
|
|
8 |
&& echo "user ALL=(ALL) NOPASSWD:ALL" > /etc/sudoers.d/90-user
|
9 |
|
|
|
10 |
ENV HOME=/home/user
|
11 |
+
WORKDIR /home/user/app
|
12 |
+
RUN mkdir -p /home/user/app /home/user/.cache /home/user/.config \
|
13 |
+
&& chown -R user:user /home/user \
|
14 |
+
&& chmod -R 777 /home/user
|
15 |
+
|
16 |
+
# 複製安裝腳本 (root)
|
17 |
+
COPY setup.sh /home/user/app/setup.sh
|
18 |
+
RUN chmod +x /home/user/app/setup.sh && /home/user/app/setup.sh
|
19 |
|
20 |
+
# 切換到 user
|
21 |
USER user
|
|
|
22 |
|
23 |
+
# 複製啟動腳本
|
24 |
+
COPY --chown=user start.sh /home/user/app/start.sh
|
25 |
+
RUN chmod +x /home/user/app/start.sh
|
26 |
|
27 |
+
# 複製應用程式檔案
|
28 |
+
COPY --chown=user . /home/user/app
|
29 |
|
30 |
ENV PYTHONUNBUFFERED=1 \
|
31 |
GRADIO_ALLOW_FLAGGING=never \
|
|
|
35 |
SYSTEM=spaces \
|
36 |
SHELL=/bin/bash
|
37 |
|
38 |
+
CMD ["/home/user/app/start.sh"]
|