sonar v2
DevSecOps Enterprise Pipeline / security-gate-and-deploy (pull_request) Failing after 38s

This commit is contained in:
pm
2026-06-12 01:03:28 +01:00
parent 0689c0bc17
commit a53b8e23e7
+16 -7
View File
@@ -1,18 +1,27 @@
FROM node:18-alpine FROM node:18-alpine
# Define o diretório de trabalho como a raiz da app # Cria um grupo e um utilizador sem privilégios
RUN addgroup -S appgroup && adduser -S appuser -G appgroup
# Define o diretório de trabalho
WORKDIR /usr/src/app WORKDIR /usr/src/app
# Copia os ficheiros de dependências da raiz para o container # Ajusta as permissões da pasta para o novo utilizador
COPY package*.json ./ RUN chown -R appuser:appgroup /usr/src/app
# Instala as dependências (agora que o package.json está aqui) # Copia os ficheiros e instala dependências
COPY package*.json ./
RUN npm install --omit=dev RUN npm install --omit=dev
# Copia o resto do código fonte (backend e frontend) # Copia o código fonte
# Em vez de COPY . . (que copia tudo), copia apenas o que é necessário:
COPY backend/ ./backend/ COPY backend/ ./backend/
COPY frontend/ ./frontend/ COPY frontend/ ./frontend/
# Expõe a porta e define o comando de arranque
# Altera a propriedade dos ficheiros copiados para o utilizador
RUN chown -R appuser:appgroup /usr/src/app
# Muda para o utilizador sem privilégios
USER appuser
EXPOSE 3000 EXPOSE 3000
CMD ["node", "backend/server.js"] CMD ["node", "backend/server.js"]