white / Dockerfile
hanahana05's picture
Upload folder using huggingface_hub
34e0b30 verified
raw
history blame contribute delete
689 Bytes
# 使用一个现代、轻量的 Node.js 镜像
FROM node:22-alpine3.19
# 设置工作目录
WORKDIR /opt/app
# 为非 root 用户设置权限,这是个好习惯
# 注意:HF Spaces 运行时可能会使用自己的 uid/gid,但 chown 在构建时仍然是好的实践
RUN chown -R 1000:1000 /opt/app
# 切换到非 root 用户
USER 1000:1000
# 复制依赖定义文件
COPY --chown=1000:1000 package.json package-lock.json ./
# 安装生产环境依赖
# 使用 --omit=dev 替代 --production,这是 npm v7+ 的推荐做法
RUN npm ci --omit=dev
# 复制所有应用代码
COPY --chown=1000:1000 . .
ENV PORT=7860
EXPOSE 7860
# 启动应用
CMD ["node", "server/server.js"]