diff --git a/backend/Dockerfile b/backend/Dockerfile index 4874357..9e43d74 100644 --- a/backend/Dockerfile +++ b/backend/Dockerfile @@ -36,6 +36,10 @@ COPY --from=builder /app/node_modules/.prisma ./node_modules/.prisma # Copy compiled application COPY --from=builder /app/dist ./dist +# Run as non-root user +RUN addgroup -S appgroup && adduser -S appuser -G appgroup +USER appuser + EXPOSE 3001 CMD ["sh", "-c", "npx prisma migrate deploy && node dist/index.js"] diff --git a/docker-compose.yml b/docker-compose.yml index ed4344a..c288aa0 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -40,7 +40,7 @@ services: args: - VITE_API_URL=${API_URL} ports: - - "5173:80" + - "5173:8080" depends_on: - backend diff --git a/frontend/Dockerfile b/frontend/Dockerfile index c0f0369..7a47859 100644 --- a/frontend/Dockerfile +++ b/frontend/Dockerfile @@ -12,12 +12,11 @@ RUN npm ci COPY . . RUN npm run build -# Production stage -FROM nginx:alpine +FROM nginxinc/nginx-unprivileged:alpine-slim COPY --from=builder /app/dist /usr/share/nginx/html COPY nginx.conf /etc/nginx/conf.d/default.conf -EXPOSE 80 +EXPOSE 8080 CMD ["nginx", "-g", "daemon off;"] \ No newline at end of file diff --git a/frontend/nginx.conf b/frontend/nginx.conf index 1a30e15..f50e61d 100644 --- a/frontend/nginx.conf +++ b/frontend/nginx.conf @@ -1,5 +1,5 @@ server { - listen 80; + listen 8080; server_name localhost; root /usr/share/nginx/html; index index.html;