From f2df990746c1271d4a78b065bd3e2a14e2a1c556 Mon Sep 17 00:00:00 2001 From: Denozordec Date: Fri, 4 Sep 2026 23:48:03 +0700 Subject: [PATCH] chore(docker): enhance Dockerfile for backend to manage nested dependencies Updated the Dockerfile to create a directory for nested workspace dependencies and adjusted the copy commands to ensure proper handling of node_modules during the build process. --- backend/Dockerfile | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/backend/Dockerfile b/backend/Dockerfile index 75e50fb..18e0302 100644 --- a/backend/Dockerfile +++ b/backend/Dockerfile @@ -31,7 +31,9 @@ COPY packages/contracts packages/contracts COPY backend backend RUN npm run build -w @mmapp/contracts \ && npm run build -w mikrotik-manager-backend \ - && npm prune --omit=dev + && npm prune --omit=dev \ + # npm may nest workspace deps (e.g. dotenv) under backend/node_modules — keep dir for COPY + && mkdir -p backend/node_modules FROM node:22-bookworm-slim AS runner WORKDIR /app @@ -45,6 +47,8 @@ COPY --from=build /app/node_modules ./node_modules COPY --from=build /app/packages/contracts ./packages/contracts COPY --from=build /app/backend/dist ./backend/dist COPY --from=build /app/backend/package.json ./backend/package.json +# Nested install from lockfile (dotenv etc.) — ESM resolves from /app/backend/dist → ../node_modules +COPY --from=build /app/backend/node_modules ./backend/node_modules RUN mkdir -p /app/data EXPOSE 8000 CMD ["node", "backend/dist/index.js"]