diff --git a/Dockerfile b/Dockerfile index e589401..c7229ee 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,15 +1,23 @@ FROM node:18-alpine -# Create app directory +# Create app directory and set permissions WORKDIR /home/node/app -# Copy package files +# Install dependencies COPY package*.json ./ RUN npm install -# Copy application files +# Copy app source COPY . . +# Create directories with proper permissions +RUN mkdir -p /home/node/app/data /home/node/app/public/uploads && \ + chown -R node:node /home/node/app && \ + chmod -R 777 /home/node/app/data /home/node/app/public/uploads + +# Switch to non-root user +USER node + # Expose port EXPOSE 2222 diff --git a/docker-compose.yml b/docker-compose.yml index 02b1210..1c45996 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -4,12 +4,11 @@ services: notes-app: build: . container_name: notes-todo-app - user: "1000:1000" # Utilise l'UID et GID standard pour le premier utilisateur ports: - "2222:2222" volumes: - - ./data:/home/node/app/data - - ./public/uploads:/home/node/app/public/uploads + - notes_data:/home/node/app/data + - notes_uploads:/home/node/app/public/uploads environment: - NODE_ENV=production - JWT_SECRET=changeme_in_production @@ -18,6 +17,10 @@ services: networks: - nginx_default +volumes: + notes_data: + notes_uploads: + networks: nginx_default: external: true \ No newline at end of file