| 12345678910111213141516171819202122 |
- FROM node:22-alpine AS build
- WORKDIR /app
- COPY package.json pnpm-lock.yaml pnpm-workspace.yaml ./
- RUN corepack enable && pnpm install --frozen-lockfile
- COPY . .
- RUN pnpm run build
- FROM node:22-alpine
- WORKDIR /app
- ENV NODE_ENV=production
- RUN apk add --no-cache libreoffice font-noto-cjk \
- && test -x /usr/bin/soffice \
- && /usr/bin/soffice --version
- COPY package.json pnpm-lock.yaml pnpm-workspace.yaml ./
- RUN corepack enable && pnpm install --frozen-lockfile
- COPY --from=build /app/dist ./dist
- COPY --from=build /app/server ./server
- COPY --from=build /app/sample ./sample
- COPY --from=build /app/tsconfig*.json ./
- RUN mkdir -p uploads
- EXPOSE 3001
- CMD ["pnpm", "start"]
|