nuxt-showcase / Dockerfile
3v324v23's picture
fix: upgrade node to v20 to resolve styleText syntax error
547bf73
raw
history blame contribute delete
949 Bytes
# 使用 Node.js 20 作为构建阶段 (Nuxt 3.12+ 需要更高版本 Node.js 支持)
FROM node:20-alpine AS builder
# 设置工作目录
WORKDIR /app
# 复制 package.json 和 pnpm-lock.yaml (如果有)
COPY package.json pnpm-lock.yaml* ./
# 安装 pnpm 并安装依赖
RUN npm install -g pnpm && pnpm install
# 复制所有源代码
COPY . .
# 构建项目
RUN pnpm run build
# 使用 Node.js 20 作为运行阶段
FROM node:20-alpine
# 设置工作目录
WORKDIR /app
# 从构建阶段复制构建结果
COPY --from=builder /app/.output ./.output
COPY --from=builder /app/package.json ./package.json
# 安装 python3 (Hugging Face Spaces 需要)
RUN apk add --no-cache python3
# 复制启动脚本
COPY app.py ./
# 暴露端口 (Hugging Face Spaces 默认使用 7860)
EXPOSE 7860
# 设置环境变量
ENV HOST=0.0.0.0
ENV PORT=7860
ENV NUXT_TELEMETRY_DISABLED=1
# 使用 python 启动 (适配 Hugging Face)
CMD ["python3", "app.py"]