From 8f82925ce51255646e0967a7dbc84cc8514bb396 Mon Sep 17 00:00:00 2001 From: "courtmanr@gmail.com" Date: Sun, 1 Jun 2025 21:42:49 +0100 Subject: [PATCH] fix: use existing node user (uid:gid 1000:1000) instead of creating new user - Leverages node:18-alpine's existing node user with proper uid:gid 1000:1000 - Eliminates uid/gid conflicts during Docker build - Maintains security by avoiding system service account permissions - Completes fix for issue #109 --- Dockerfile | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Dockerfile b/Dockerfile index 762d3cf92..36c2466ca 100644 --- a/Dockerfile +++ b/Dockerfile @@ -28,8 +28,8 @@ FROM node:18-alpine WORKDIR /usr/src/app -# Create a non-root user and group with uid:gid 1000:1000 (standard user) -RUN addgroup -g 1000 appgroup && adduser -u 1000 -G appgroup -s /bin/sh -D appuser +# Use existing node user (uid:gid 1000:1000) instead of system service accounts +# The node:18-alpine image already has a 'node' user with uid:gid 1000:1000 # Copy necessary files from builder stage # Copy node_modules first (can be large) @@ -48,10 +48,10 @@ RUN mkdir -p /usr/src/app/config /usr/src/app/data # Ensure correct ownership of application files # Use /usr/src/app to cover everything copied -RUN chown -R appuser:appgroup /usr/src/app +RUN chown -R node:node /usr/src/app # Switch to non-root user -USER appuser +USER node # Set environment variable to indicate Docker deployment ENV DOCKER_DEPLOYMENT=true