fix(infra): droits écriture /app/documents/legaux pour upload PDF (#126)

Le conteneur tournait en nestjs sans permission sur /app : mkdir sur
/app/documents/legaux échouait → 500 sur POST documents-legaux.
Création + chown dans l’image Docker + volume nommé pour persistance.

Made-with: Cursor
This commit is contained in:
MARTIN Julien 2026-04-17 13:42:35 +02:00
parent d8a81a56ae
commit 9acfc31e72
2 changed files with 6 additions and 2 deletions

View File

@ -32,8 +32,9 @@ COPY --from=builder /app/dist ./dist
RUN addgroup -g 1001 -S nodejs RUN addgroup -g 1001 -S nodejs
RUN adduser -S nestjs -u 1001 RUN adduser -S nestjs -u 1001
# Créer le dossier uploads et donner les permissions # Dossiers écriture runtime (nestjs non-root) : photos + documents légaux (PDF)
RUN mkdir -p /app/uploads/photos && chown -R nestjs:nodejs /app/uploads RUN mkdir -p /app/uploads/photos /app/documents/legaux && \
chown -R nestjs:nodejs /app/uploads /app/documents
USER nestjs USER nestjs

View File

@ -61,6 +61,8 @@ services:
UPLOAD_PHOTOS_DIR: ${UPLOAD_PHOTOS_DIR:-/app/uploads/photos} UPLOAD_PHOTOS_DIR: ${UPLOAD_PHOTOS_DIR:-/app/uploads/photos}
volumes: volumes:
- backend_uploads:/app/uploads/photos - backend_uploads:/app/uploads/photos
# PDF CGU / privacy (upload admin) — persistance entre redémarrages
- backend_documents_legaux:/app/documents/legaux
depends_on: depends_on:
- database - database
labels: labels:
@ -105,6 +107,7 @@ services:
volumes: volumes:
postgres_data: postgres_data:
backend_uploads: backend_uploads:
backend_documents_legaux:
networks: networks:
ptitspas_network: ptitspas_network: