lucklca commited on
Commit
c8c9c6d
·
verified ·
1 Parent(s): f06cb76

Create Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +24 -0
Dockerfile ADDED
@@ -0,0 +1,24 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ FROM ghcr.io/astral-sh/uv:python3.12-bookworm-slim
2
+
3
+ # 【关键适配 1】设置 Hugging Face 要求的非 root 用户 (UID 1000)
4
+ RUN useradd -m -u 1000 user
5
+ USER user
6
+ ENV HOME=/home/user \
7
+ PATH=/home/user/.local/bin:$PATH
8
+
9
+ # 将工作目录设置在用户家目录下,避免权限问题
10
+ WORKDIR $HOME/app
11
+
12
+ # 拷贝依赖文件并安装 (注意加上 --chown=user 修改所属权)
13
+ COPY --chown=user pyproject.toml .
14
+ RUN uv sync
15
+
16
+ # 拷贝应用代码
17
+ COPY --chown=user main.py .
18
+ COPY --chown=user assets/ assets/
19
+
20
+ # 【关键适配 2】暴露 Hugging Face 默认的 7860 端口
21
+ EXPOSE 7860
22
+
23
+ # 【关键适配 3】将 Uvicorn 的启动端口改为 7860
24
+ CMD["uv", "run", "uvicorn", "main:app", "--host", "0.0.0.0", "--port", "7860"]