Spaces:
Sleeping
Sleeping
Trae Assistant commited on
Commit ·
0b2dc60
1
Parent(s): ad893f7
feat: add Dockerfile and .dockerignore for huggingface
Browse files- .dockerignore +15 -0
- Dockerfile +37 -0
.dockerignore
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
node_modules
|
| 2 |
+
.git
|
| 3 |
+
dist
|
| 4 |
+
.env
|
| 5 |
+
.vercel
|
| 6 |
+
.trae
|
| 7 |
+
*.log
|
| 8 |
+
npm-debug.log*
|
| 9 |
+
yarn-debug.log*
|
| 10 |
+
yarn-error.log*
|
| 11 |
+
pnpm-debug.log*
|
| 12 |
+
lerna-debug.log*
|
| 13 |
+
.DS_Store
|
| 14 |
+
.vscode
|
| 15 |
+
.idea
|
Dockerfile
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# 使用官方 Node.js 镜像作为基础
|
| 2 |
+
FROM node:20-slim
|
| 3 |
+
|
| 4 |
+
# 安装 pnpm
|
| 5 |
+
RUN npm install -g pnpm
|
| 6 |
+
|
| 7 |
+
# 设置工作目录
|
| 8 |
+
WORKDIR /app
|
| 9 |
+
|
| 10 |
+
# 设置 UID 1000 以符合 Hugging Face Spaces 要求
|
| 11 |
+
RUN useradd -m -u 1000 user
|
| 12 |
+
USER user
|
| 13 |
+
ENV HOME=/home/user \
|
| 14 |
+
PATH=/home/user/.local/bin:$PATH
|
| 15 |
+
|
| 16 |
+
WORKDIR $HOME/app
|
| 17 |
+
|
| 18 |
+
# 复制 package.json 和 lock 文件
|
| 19 |
+
COPY --chown=user package.json pnpm-lock.yaml* ./
|
| 20 |
+
|
| 21 |
+
# 安装依赖
|
| 22 |
+
RUN pnpm install
|
| 23 |
+
|
| 24 |
+
# 复制其余源代码
|
| 25 |
+
COPY --chown=user . .
|
| 26 |
+
|
| 27 |
+
# 构建前端项目
|
| 28 |
+
RUN pnpm build
|
| 29 |
+
|
| 30 |
+
# 暴露 Hugging Face 要求的端口
|
| 31 |
+
EXPOSE 7860
|
| 32 |
+
|
| 33 |
+
# 设置后端服务端口
|
| 34 |
+
ENV PORT=7860
|
| 35 |
+
|
| 36 |
+
# 启动后端服务 (它将同时提供静态前端文件)
|
| 37 |
+
CMD ["npx", "tsx", "api/server.ts"]
|