0606.6
Some checks failed
Next.js CI/CD 流水线 / deploy (push) Failing after 1m40s

This commit is contained in:
2025-06-06 02:01:55 +08:00
parent 1bd2987d80
commit 533d2862ff

View File

@@ -1,10 +1,17 @@
# 🚀 超优化版 Dockerfile for Next.js with pnpm (目标: <200MB)
# 🚀 超优化版 Dockerfile for Next.js with pnpm (Ubuntu环境解决兼容性)
# 第一阶段:构建阶段
FROM node:22-alpine AS builder
FROM node:22-slim AS builder
# 设置工作目录
WORKDIR /app
# 安装必要的系统依赖
RUN apt-get update && apt-get install -y \
python3 \
make \
g++ \
&& rm -rf /var/lib/apt/lists/*
# 安装 pnpm
RUN npm install -g pnpm@9.15.0
@@ -30,20 +37,20 @@ RUN rm -rf node_modules && \
rm -rf /root/.pnpm-store && \
pnpm store prune
# 第二阶段:运行阶段 (使用更小的基础镜像)
FROM node:22-alpine AS runner
# 第二阶段:运行阶段 (使用Ubuntu slim镜像)
FROM node:22-slim AS runner
# 设置工作目录
WORKDIR /app
# 创建非root用户
RUN addgroup --system --gid 1001 nodejs && \
adduser --system --uid 1001 nextjs
RUN groupadd --system --gid 1001 nodejs && \
useradd --system --uid 1001 --gid nodejs nextjs
# 只安装必要的运行时工具
RUN apk add --no-cache wget && \
apk cache clean && \
rm -rf /var/cache/apk/*
RUN apt-get update && apt-get install -y \
wget \
&& rm -rf /var/lib/apt/lists/*
# 从构建阶段复制构建产物 (standalone模式包含所有需要的依赖)
COPY --from=builder --chown=nextjs:nodejs /app/.next/standalone ./