opqtest commited on
Commit
befd781
·
verified ·
1 Parent(s): 84e7849

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +29 -2
Dockerfile CHANGED
@@ -4,8 +4,35 @@ ENV PORT=7860
4
  ENV DISPLAY_WIDTH=1920
5
  ENV DISPLAY_HEIGHT=1080
6
 
7
- RUN apk add --no-cache socat
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8
 
9
  EXPOSE 7860
10
 
11
- CMD sh -c "socat TCP-LISTEN:${PORT},fork TCP:127.0.0.1:5800 & exec /init"
 
 
 
 
 
 
 
 
 
 
4
  ENV DISPLAY_WIDTH=1920
5
  ENV DISPLAY_HEIGHT=1080
6
 
7
+ # ---------- 安装 ----------
8
+ RUN apk add --no-cache \
9
+ python3 \
10
+ py3-pip \
11
+ socat \
12
+ font-noto \
13
+ font-noto-cjk \
14
+ font-noto-cjk-extra
15
+
16
+ # ---------- Python venv(PEP 668 解决方案) ----------
17
+ WORKDIR /app
18
+ RUN python3 -m venv /app/venv
19
+ ENV PATH="/app/venv/bin:$PATH"
20
+
21
+ RUN pip install --upgrade pip \
22
+ && pip install fastapi uvicorn
23
+
24
+ # ---------- FastAPI ----------
25
+ COPY clipboard_api.py /app/clipboard_api.py
26
 
27
  EXPOSE 7860
28
 
29
+ # ---------- 启动 ----------
30
+ CMD sh -c "\
31
+ # 1️⃣ 把 HF 的 7860 转发给 noVNC 的 5800 \
32
+ socat TCP-LISTEN:7860,fork TCP:127.0.0.1:5800 & \
33
+ \
34
+ # 2️⃣ FastAPI 只监听 localhost,不对外暴露 \
35
+ uvicorn clipboard_api:app --host 127.0.0.1 --port 8000 & \
36
+ \
37
+ # 3️⃣ 启动 Firefox/noVNC \
38
+ exec /init"