pan0022 commited on
Commit
640aaa7
·
verified ·
1 Parent(s): 51c492a

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +22 -5
Dockerfile CHANGED
@@ -1,14 +1,31 @@
 
1
  FROM python:3.10-slim
2
 
 
3
  WORKDIR /app
4
 
5
- RUN pip install --no-cache-dir flask requests curl_cffi werkzeug loguru
 
6
 
7
- VOLUME ["/data"]
 
 
8
 
9
- COPY . .
 
 
10
 
11
- ENV PORT=3000
 
 
 
 
 
 
12
  EXPOSE 7860
13
 
14
- CMD ["python", "app.py"]
 
 
 
 
 
1
+ # 1. 使用基础镜像
2
  FROM python:3.10-slim
3
 
4
+ # 2. 设置工作目录
5
  WORKDIR /app
6
 
7
+ # 3. 安装依赖 (保持原样)
8
+ RUN pip install --no-cache-dir flask requests curl_cffi werkzeug loguru
9
 
10
+ # 4. 创建 Hugging Face 要求的非 root 用户 (关键步骤)
11
+ # 创建 user 用户,UID 为 1000
12
+ RUN useradd -m -u 1000 user
13
 
14
+ # 5. 准备数据目录 (防止权限报错)
15
+ # 手动创建 /data 目录并赋予权限,因为原项目定义了 VOLUME
16
+ RUN mkdir -p /data && chown user:user /data
17
 
18
+ # 6. 复制文件并修改所有者 (关键步骤)
19
+ # 使用 --chown=user 确保代码文件的所有者是 user,而不是 root
20
+ COPY --chown=user . .
21
+
22
+ # 7. 修改环境变量端口为 7860 (关键步骤)
23
+ # Hugging Face 只能识别 7860 端口
24
+ ENV PORT=7860
25
  EXPOSE 7860
26
 
27
+ # 8. 切换到非 root 用户运行
28
+ USER user
29
+
30
+ # 9. 启动命令
31
+ CMD ["python", "app.py"]