@@ -8,24 +8,33 @@ COPY packages/server/package.json packages/server/
88COPY apps/launcher/package.json apps/launcher/
99COPY apps/edocs/package.json apps/edocs/
1010COPY apps/enotes/package.json apps/enotes/
11- RUN npm install -g pnpm && pnpm install --workspace=packages/core --workspace=packages/ebot-client --workspace=packages/server --workspace=apps/launcher --workspace=apps/edocs --workspace=apps/enotes
11+
12+ RUN npm install -g pnpm && \
13+ pnpm install --workspace=packages/core --workspace=packages/ebot-client --workspace=packages/server --workspace=apps/launcher --workspace=apps/edocs --workspace=apps/enotes
14+
1215COPY . .
13- RUN pnpm run build --filter=@eoffice/core
14- RUN pnpm run build --filter=@eoffice/ebot-client
15- RUN pnpm run build --filter=@eoffice/server
16- RUN pnpm run build --filter=@eoffice/launcher
17- RUN pnpm run build --filter=@eoffice/edocs
18- RUN pnpm run build --filter=@eoffice/enotes
16+ RUN pnpm run build --filter=@eoffice/core && \
17+ pnpm run build --filter=@eoffice/ebot-client && \
18+ pnpm run build --filter=@eoffice/server && \
19+ pnpm run build --filter=@eoffice/launcher && \
20+ pnpm run build --filter=@eoffice/edocs && \
21+ pnpm run build --filter=@eoffice/enotes
1922
2023# Production stage
2124FROM node:20-alpine AS production
2225WORKDIR /app
2326ENV NODE_ENV=production
27+
2428COPY --from=builder /app/packages/server/dist ./server/
2529COPY --from=builder /app/apps/launcher/dist ./public/launcher/
2630COPY --from=builder /app/apps/edocs/dist ./public/edocs/
2731COPY --from=builder /app/apps/enotes/dist ./public/enotes/
2832COPY --from=builder /app/packages/server/package.json ./
29- RUN npm install -g pnpm && pnpm install --prod
33+
34+ RUN npm install -g pnpm && \
35+ pnpm install --prod && \
36+ chown -R node:node /app
37+
38+ USER node
3039EXPOSE 3001
3140CMD ["node" , "server/index.js" ]
0 commit comments