fix: reduce Docker image from 331MB to 215MB — remove duplicate node_modules layer
v0.2.2: Removed COPY --from=builder node_modules from runner stage. The full dev+prod modules (116MB) were being copied as a permanent Docker layer, then npm ci --omit=dev installed a separate prod-only set on top. Now only the prod install runs, cutting 116MB.
This commit is contained in:
parent
1f3e3864f9
commit
ba0d039cdc
|
|
@ -34,14 +34,13 @@ RUN mkdir -p /app/db /app/logs
|
|||
COPY docker-entrypoint.sh /usr/local/bin/
|
||||
RUN chmod +x /usr/local/bin/docker-entrypoint.sh
|
||||
|
||||
# Copy from builder - production dependencies only
|
||||
# Copy from builder - built artifacts and package manifests
|
||||
COPY --from=builder /app/package.json /app/package-lock.json* ./
|
||||
COPY --from=builder /app/node_modules ./node_modules
|
||||
COPY --from=builder /app/dist ./dist
|
||||
COPY --from=builder /app/server ./server
|
||||
|
||||
# Install production dependencies only in runtime stage
|
||||
RUN npm ci --omit=dev || true
|
||||
RUN npm ci --omit=dev
|
||||
|
||||
# Install su-exec for switching to non-root user
|
||||
RUN apk add --no-cache su-exec && \
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"name": "queuenorth-website",
|
||||
"private": true,
|
||||
"version": "0.2.1",
|
||||
"version": "0.2.2",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"dev": "concurrently \"vite\" \"node server/index.js\"",
|
||||
|
|
|
|||
Loading…
Reference in New Issue