From 874d97889fc841c51877acf15db4ebc6809015b2 Mon Sep 17 00:00:00 2001 From: Lalit Sudhir Date: Fri, 24 Oct 2025 00:36:40 -0700 Subject: [PATCH] optimize Dockerfile and update nginx base image --- Dockerfile | 19 ++++--------------- docker-compose.dev.yml | 2 +- 2 files changed, 5 insertions(+), 16 deletions(-) diff --git a/Dockerfile b/Dockerfile index 63d3742..07789e9 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,11 +1,8 @@ # Build stage FROM node:20-alpine AS builder - WORKDIR /app - COPY package*.json ./ RUN npm ci - COPY . . # Build without type checking (vite build only) @@ -15,18 +12,10 @@ ENV SIMPLE_MODE=$SIMPLE_MODE RUN npm run build -- --mode production # Production stage -FROM nginxinc/nginx-unprivileged:1.29-alpine +FROM nginxinc/nginx-unprivileged:stable-alpine-slim -# Copy files as root first, then change ownership -COPY --from=builder /app/dist /usr/share/nginx/html -COPY nginx.conf /etc/nginx/nginx.conf - -# Change ownership while still root, then switch to nginx user -USER root -RUN mkdir -p /etc/nginx/tmp && \ - chown -R nginx:nginx /usr/share/nginx/html /etc/nginx/tmp -USER nginx - -EXPOSE 8080 +COPY --chown=nginx:nginx --from=builder /app/dist /usr/share/nginx/html +COPY --chown=nginx:nginx nginx.conf /etc/nginx/nginx.conf +RUN mkdir -p /etc/nginx/tmp && chown -R nginx:nginx /etc/nginx/tmp CMD ["nginx", "-g", "daemon off;"] diff --git a/docker-compose.dev.yml b/docker-compose.dev.yml index f630066..5a09083 100644 --- a/docker-compose.dev.yml +++ b/docker-compose.dev.yml @@ -4,7 +4,7 @@ services: context: . dockerfile: Dockerfile args: - SIMPLE_MODE: true # false for default mode, true for simple mode + SIMPLE_MODE: false # false for default mode, true for simple mode container_name: bentopdf ports: - '3000:8080'