30 lines
621 B
Plaintext
30 lines
621 B
Plaintext
# 使用官方 Node.js 镜像
|
|
FROM node:22-alpine
|
|
|
|
# 安装 pnpm
|
|
RUN npm install -g pnpm
|
|
|
|
# 设置工作目录
|
|
WORKDIR /build
|
|
|
|
# 复制 monorepo 配置文件
|
|
COPY pnpm-workspace.yaml ./
|
|
COPY package.json ./
|
|
COPY pnpm-lock.yaml ./
|
|
COPY turbo.json ./ # 添加这行 - 必须复制 turbo.json
|
|
|
|
# 复制所有 workspace 包和应用
|
|
COPY packages ./packages
|
|
COPY apps ./apps
|
|
|
|
# 使用 pnpm 安装依赖
|
|
RUN pnpm install
|
|
|
|
# 先构建需要构建的包
|
|
RUN pnpm --filter @deotaland/ui build
|
|
|
|
# 构建应用
|
|
RUN pnpm run build
|
|
|
|
# 确认构建输出存在
|
|
CMD ["sh", "-c", "find /build -name 'dist' -type d -exec ls -la {} \\;"] |