Dockerfile 541 B

12345678910111213141516171819202122
  1. FROM node:22-alpine AS build
  2. WORKDIR /app
  3. COPY package*.json ./
  4. RUN npm install
  5. COPY . .
  6. RUN npm run build
  7. FROM node:22-alpine
  8. WORKDIR /app
  9. ENV NODE_ENV=production
  10. RUN apk add --no-cache libreoffice font-noto-cjk \
  11. && test -x /usr/bin/soffice \
  12. && /usr/bin/soffice --version
  13. COPY package*.json ./
  14. RUN npm install --omit=dev
  15. COPY --from=build /app/dist ./dist
  16. COPY --from=build /app/server ./server
  17. COPY --from=build /app/sample ./sample
  18. COPY --from=build /app/tsconfig*.json ./
  19. RUN mkdir -p uploads
  20. EXPOSE 3001
  21. CMD ["npm", "start"]