From f3863c785d246447de14c8df4df1f058d8366245 Mon Sep 17 00:00:00 2001 From: Hermes Agent Date: Fri, 11 Sep 2026 16:04:54 +0200 Subject: [PATCH] Refactored console dockerfile --- PostFundManagement.ConsoleUI/Dockerfile | 31 ++++++++++++++----------- 1 file changed, 18 insertions(+), 13 deletions(-) diff --git a/PostFundManagement.ConsoleUI/Dockerfile b/PostFundManagement.ConsoleUI/Dockerfile index 2f50783..ac8b417 100644 --- a/PostFundManagement.ConsoleUI/Dockerfile +++ b/PostFundManagement.ConsoleUI/Dockerfile @@ -3,34 +3,39 @@ FROM node:20-alpine AS builder WORKDIR /app -# Copy dependency definitions -COPY PostFundManagement.ConsoleUI/package*.json ./ +# Enable corepack to use Yarn +RUN corepack enable -# Install dependencies -RUN npm ci || npm install +# Copy dependency definitions from the subdirectory +COPY PostFundManagement.ConsoleUI/package*.json PostFundManagement.ConsoleUI/yarn.lock* ./ -# Copy application source -COPY PostFundManagement.ConsoleUI/ . +# Install dependencies via Yarn +RUN yarn install --frozen-lockfile || yarn install + +# Copy application source from the subdirectory +COPY PostFundManagement.ConsoleUI/ ./ # Build Vite application for production -RUN npm run build +RUN yarn build # Stage 2: Production Nginx Server FROM nginx:alpine -# Copy nginx configuration -COPY nginx.conf /etc/nginx/conf.d/default.conf +WORKDIR /usr/share/nginx/html + +# Copy nginx configuration from stage 1 build directory +COPY --from=builder /app/nginx.conf /etc/nginx/conf.d/default.conf # Copy compiled static assets from build stage -COPY --from=builder /app/PostFundManagement.ConsoleUI/dist /usr/share/nginx/html +COPY --from=builder /app/dist ./ # Copy entrypoint script for dynamic runtime environment variables -COPY docker-entrypoint.sh /app/PostFundManagement.ConsoleUI/docker-entrypoint.sh -RUN chmod +x /app/PostFundManagement.ConsoleUI/docker-entrypoint.sh +COPY --from=builder /app/docker-entrypoint.sh /docker-entrypoint.sh +RUN chmod +x /docker-entrypoint.sh # Expose port 3000 EXPOSE 3000 # Set entrypoint and default command ENTRYPOINT ["/docker-entrypoint.sh"] -CMD ["nginx", "-g", "daemon off;"] +CMD ["nginx", "-g", "daemon off;"] \ No newline at end of file